Lines
  • 25 Minutes to read

    Lines


      Article summary

      Line budgets, bidding, and billing are tied together in support of a line goal. The line optimizes bidding towards an objective. But line goals are always always constrained by media, budget, and billing configurations that define that line.

      Overview

      In Yahoo DSP, a line is a subcomponent of a campaign that specifies an advertising strategy. Yahoo DSP defines each line by one or more ads, a goal type, and a set of budgetary and targeting parameters.

      Each line item should represent a distinct targeting strategy. Using lines, a campaign can independently target diverse exchanges, deals, locations, demographics, ad positions, frequency, audiences, devices, days of the week, apps, URLs, page relevancy, mobile carriers, and languages.

      Although you can specify budgets at both the campaign and line level; flight dates, frequency caps, and budgets specified at the campaign level override line-level configurations.

      Endpoint

      /traffic/lines

      The action taken depends on the HTTP method and the parameters specified.

      • Use the GET method to read an existing line.

      • Use the POST method to create a new line.

      • Use the PUT method to update an existing line.

      Resources

      The platform provides the following resources for managing and tracking lines:

      • lines

      • schedules

      • feeList

      • conversionList

      Line Object

      The Line object contains the following fields:

      Field

      Description

      Data Type

      Create

      Update

      id

      Specifies the line ID.

      integer

      N/A

      Required

      name

      Specifies the unique name of the line.

      string

      Required

      Optional

      orderId

      Specifies the campaign ID.

      To learn more, refer to Campaigns.

      integer

      Required

      Optional

      mediaType

      Specifies the media type served by the line.

      Allowed values:

      • DISPLAY: To run an image ad, create a display line item within a campaign.

      • VIDEO: To run a video ad, create a video line item within a campaign.

      • AUDIO: To run an audio ad, create an audio line item within a campaign.

      Once the line is created, this value cannot be changed.

      string

      Required

      N/A

      status

      Specifies the current status of the line.

      Allowed values:

      • ACTIVE: Active/running

      • PAUSED: Just ended

      • INACTIVE: Inactive/ended

      The following status types are read-only:

      • STOP_TOTAL_BUDGET: Total budget reached

      • STOP_DAILY_BUDGET: Daily budget reached

      • NOT_STARTED: Not started yet

      • ENDED: Ended

      • ERROR: Error

      string

      Required

      Optional

      goalType

      Specifies the goal type the platform will use to optimize line performance.

      Different goal types are available depending on the mediaType specified.

      Display Line

      • NONE: This is the default option. With this goal type, Yahoo DSP does not factor in a goal when it bids on impressions.

      • CPI: Establish a cost per installation goal by specifying the target CPI (goalAmount), Max CPM (bidPrice) amounts and at least one conversion rule.

      • CPC: Establish a cost per click goal by specifying the target CPC (goalAmount) and Max CPM (bidPrice) amounts.

      • CPA: Establish a cost per action goal by specifying the Target CPA (goalAmount) and Max CPM (bidPrice) amounts and at least one conversion rule.

      • CPSV: Establish a cost per store visit goal by specifying the target CPSV (goalAmount), Max CPM (bidPrice) amounts and at least one offline conversion rule.

      • VCPM: Establish a viewable CPM goal by specifying the target VCPM (goalAmount) and Max CPM (bidPrice) amounts.

      • ROAS: Establish a return on ad spend goal by specifying the Max ROAS (maxGoal) and Max CPM (bidPrice) amounts and at least one conversion rule.

      • MAXINVIEWRATE: Maximize Viewability: Establish a soft goal to maximize viewability by specifying the Max CPM (bidPrice) amount.

        Note: Do not use MAXINVIEWRATE for display lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      • OCPC: (Fixed CPM billing only, i.e. when billingMethodType is CPM_PRICE) Establish an optimized CPC goal by specifying the target CPC (goalAmount) and profit margin percentage (marginGoal).

        Note: Do not use OCPC for display lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      • CUSTOMER_VALUE_OPTIMIZATION:  Establish a soft goal to maximize overall customer value by specifying the Max CPM (bidPrice) amount.

        Note: Only for display lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      Video Line

      • NONE: This is the default option. With this goal type, Yahoo DSP does not factor in a goal when it bids on impressions.

      • CPI: Establish a cost per installation goal by specifying the target CPI (goalAmount), Max CPM (bidPrice) amounts and at least one conversion rule.

      • CPIA: Establish cost per incremental actor goal by specifying Target CPIA (goalAmount) and Max CPM (goalAmount) amounts and at least one pixel rule.

      • CPC: Establish a cost per click goal by specifying the target CPC (goalAmount) and Max CPM (bidPrice) amounts.

      • CPCV: Establish a cost per single completed view goal by specifying the Target CPCV (goalAmount), Max CPM (bidPrice) amounts. When billingMethodType is CPM_PRICE, additionally specify Max CPCV (maxGoal) amount.

      • CPSV: Establish a cost per store visit goal by specifying the target CPSV (goalAmount), Max CPM (bidPrice) amounts and at least one offline conversion rule.

      • VCPM: Establish a viewable CPM goal for oCPM and Fixed CPM-billed lines by specifying the target VCPM (goalAmount) and Max CPM (bidPrice) amounts.

      • MAXCOMPLETIONRATE: Maximize Completion Rate: This is a soft optimization feature that helps improve the video completion rate over time without sacrificing impression delivery. For this goal type, specify the CPM (bidPrice) amount.

      • MAXCTR: Maximize CTR: This is a soft optimization feature that helps improve the click-through rate (CTR) over time without sacrificing impression delivery. For this goal type, specify the CPM (bidPrice) amount.

        Note: Do not use MAXCOMPLETIONRATE for video lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      • MAXINVIEWRATE: Maximize Viewability: This is a soft optimization feature that helps improve video viewability.

        A viewable video impression requires that 50% of video ad pixels are active and in the viewable portion of the viewer’s browser for two consecutive seconds. For this goal type, specify the CPM (bidPrice) amount.

        Note: Do not use MAXINVIEWRATE for video lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      • COMPLETION_HARD_THRESHOLD: Specify Max CPM (bidPrice) amount and the completionThreshold percentage. (This goal type requires a special role).

        Note: Do not use COMPLETION_HARD_THRESHOLD for video lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      • CUSTOMER_VALUE_OPTIMIZATION:  Establish a soft goal to maximize overall customer value by specifying the Max CPM (bidPrice) amount.

        Note: Only for video lines when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      Audio Line

      • NONE: This is the default option. With this goal type, the DSP does not factor in a goal when it bids on impressions.

      • ECPM: Establish a CPM goal by specifying the target ECPM (goalAmount) and Max ECPM (bidPrice) amounts.

      Connected TV (CTV) Line

      • MaximizeIncrementalReach: Establish a soft goal to maximize incremental reach by specifying the Max CPM (bidPrice) amount. Use this goal type to maximize reaching new audiences/households across CTV channels that are not being targeted on linear TV.

      string

      Required

      Optional

      goalModeType

      Specifies the goal mode. The goal mode determines whether the optimizes for line delivery or line performance.

      Allowed values:

      • SOFT: maximizes line performance while meeting line delivery objectives (spending the line’s total budget).

      • HARD: optimizes line delivery while matching or exceeding the specified target CPC goal.

      Only valid when billingMethodType is MARGIN and when goalType is any of the following: CPC, CPA, VCPM, CPI. When not specified, defaults to SOFT for goal types CPC, VCPM and CPA or HARD for goal type CPI.

      string

      Optional 

      Optional

      goalAmount

      Specifies the target amount for certain goal types.

      Required when goalType is CPC, CPA, VCPM, CPI, CPCV or CPSV.

      number

      Required

      Optional

      bidPrice

      Specifies the maximum bid price (Maximum CPM Price) allowed for certain goal types.

      number

      Required

      Optional

      maxGoal

      Specifies the maximum goal price.

      Required when goalType is ROAS or CPCV.

      number

      Required 

      Optional

      marginGoal

      Specifies the margin percentage.

      Required when goalType is OCPC.

      number

      Required 

      Optional

      isNativeEnabled

      Specifies if the line can serve native ads. Native ads are not supported at this time for video lines.

      • true: enable native ad support.

      • false: disable native ad support.

      Once the line is created, this value cannot be changed. If not specified when creating the line, defaults to false.

      boolean

      Optional

      N/A

      pacingModeType

      Specifies the pacing mode.

      Allowed values:

      • EVEN: Spread the line budget evenly. If your daily budget is Auto Allocated, Yahoo DSP spreads the total budget evenly over the line’s flight dates. If your daily budget is a Specified Amount, Yahoo DSP spreads the specified daily budget evenly throughout the day.

      • ASAP: Bid on every impression opportunity that meets the line’s targeting criteria. If your daily budget is Auto Allocated, Yahoo DSP delivers ASAP until all remaining budget is consumed. If your daily budget is a Specified Amount, Yahoo DSP delivers ASAP until the specified amount is consumed.

      • PACE_AHEAD: Provides greater control over how line budgets are allocated during a flight by enabling you to over-pace daily budgets. If the daily budget is user-specified, the line will over-pace the daily budget every day until the total budget is consumed. The amount over-spent is determined by the pacingAcceleration specified. If the line’s daily budget is auto-allocated, the line’s spend rate is dynamically determined based on the line’s remaining total budget, the remaining days in the flight, and the line’s pacingAcceleration.

      If not specified when creating the line, defaults to EVEN.

      string

      Optional

      Optional 

      pacingAcceleration

      Specifies the percentage over the daily budget that the line may spend per day.

      Ahead pacing is the product of the even pacing value multiplied by the pacing acceleration value: (remaining budget/remaining days) * pacing acceleration value.

      Required if the value of pacingModeType is PACE_AHEAD.

      integer

      Required 

      Optional 

      appMarketingObjective

      Defines the objective of the app marketing line. It can be set for a line with CPI goal type.

      Allowed values:

      • APP_INSTALL: Dynamic suppression will suppress device ids that already have the app.

      • POST_INSTALL: Dynamic suppression is not done for the post-install objective.

      • RE_ENGAGEMENT: Dynamic suppression will be able to target the device ids that already have the app.

      Required when goalType is CPI.

      string

      Optional 

      Optional 

      appUrl

      The URL of the app that line is running for. It should be Google app URL if the line is targeting Android devices and Apple store app URL if the line is targeting IOS devices.

      Example values: https://play.google.com/store/apps/details?id=com.espn.score_center&hl=en_US, https://apps.apple.com/pe/app/instagram/id389801252

      Required when goalType is CPI.

      string

      Optional 

      Optional 

      appLocale

      The region (country) of the Google play store or Apple app store where the app is uploaded.

      Allowed values:

      • de-de: Germany

      • el-gr: Greece

      • en-au: Australia

      • en-ca: Canada

      • en-gb: United Kingdom

      • en-hk: Hong Kong

      • en-in: India

      • en-nz: New Zealand

      • en-ph: Philippines

      • en-sg: Singapore

      • en-us: United States

      • en-za: South Africa

      • es-ar: Argentina

      • es-cl: Chile

      • es-co: Colombia

      • es-cr: Costa Rica

      • es-es: Spain

      • es-mx: Mexico

      • es-pe: Peru

      • es-pr: Puerto Rico

      • es-us: United States (Spanish)

      • fr-ca: Canada (French)

      • fr-ch: Switzerland

      • fr-fr: France

      • id-id: Indonesia

      • it-it: Italy

      • ja-jp: Japan

      • ko-kr: South Korea

      • ms-my: Malaysia

      • pt-br: Brazil

      • sv-se: Sweden

      • th-th: Thailand

      • vi-vn: Vietnam

      • zh-cn: China

      • zh-tw: Taiwan

      Required when goalType is CPI.

      string

      Optional 

      Optional

      appId

      The app ID is generated based on the appUrl and appLocale provided.

      Example values: com.espn.score_center, 389801252

      string

      N/A

      N/A

      budgetType

      Specifies whether the line uses impression-based budgeting or budgeting based on US dollars for the line.

      Allowed values:

      • CURRENCY: Budget based on US Dollars.

      • IMPRESSION: Budget based on impressions. Impression-based budgeting enables you to control the number of impressions a line delivers, and respects the line’s Max CPM price, daily pacing, optimization goals, and targeting options.

      string

      Optional

      Optional

      billingMethodType

      Specifies the billing method.

      Allowed values:

      • CPM_PRICE: With Fixed CPM billing, you pay a fixed price per thousand impressions.

      • CPC: With Fixed CPC billing, you pay a fixed price per click.

      • MARGIN: (oCPM) With oCPM billing, Yahoo DSP predicts the probability that events (such as clicks, conversions, video completions, or impressions) will occur.

      • CPCV: (Video Line only) Cost Per Completed View for video. With CPCV billing, you only pay for completed video views. Note: If you choose CPCV, you must set pacingMode to EVEN and you can only set goalType to either CPCV or NONE.

        Note: Only MARGIN is compatible with Yahoo Blueprint Performance, refer to Campaigns.

      string

      Required

      Optional

      billingPrice

      Specifies the amount paid based on the specified billingMethodType.

      • When billingMethodType is MARGIN (oCPM), specifies the profit margin percentage.

      • When billingMethodType is CPCV, this field represents the amount you want to pay for each completed video view.

      • When billingMethodType is CPM_PRICE, this field represents the amount you want to pay per thousand impressions.

      • When billingMethodType is CPC, this field represents the amount you want to pay for each click.

      number

      Optional

      Optional

      marginType

      Specifies how the margin is calculated.

      Allowed values:

      • TOTAL_BUDGET: Margin is calculated as a percentage of advertiser spend, which includes all costs (inventory, Yahoo fees, and variable costs).

      • BUYER_COST: Margin is calculated as a percentage of the buyer cost where buyer cost = inventory cost + Yahoo fees. This option excludes all variable costs.

      Note: This is available to self-serve accounts only.

      string

      Required

      Optional

      completionThreshold

      Specifies the completion threshold percentage.

      Required when goalType is COMPLETION_HARD_THRESHOLD.

      integer

      Required 

      Optional

      schedules

      Specifies either a single budget schedule or multiple budget schedules.

      To learn more, refer to Schedules Object.

      Note: Multiple schedules are supported only when budgetType is CURRENCY.

      object

      Required

      Optional

      feeList

      Track external costs such as ad serving, measurement, and brand safety costs. To help you better manage your margins, you can add up to six variable CPM costs to each line for tracking purposes.

      To learn more, refer to FeeList Object.

      Note: This is available to self-serve accounts only.

      object

      Optional

      Optional

      conversionList

      Yahoo DSP can optimize a line with multiple conversion rules when you establish conversion values.

      To learn more, refer to ConversionList Object.

      object

      Optional

      Optional

      bidMultiplierCap

      A bid multiplier is a targeting-specific configuration that specifies the relative weight that should be given to targeted ad placement opportunities.

      To learn more, refer to Bid Multiplier Cap Object.

      object

      N/A

      N/A

      channelType

      Specifies the type of media used to build the line’s creatives.

      Allowed values:

      • DOOH: To create digital-out-of-home line.

      • CTV: To create a connected TV line.

      Once the line is created, this value cannot be changed.

      string

      Optional

      N/A 

      enableBudgetRollover

      Set to true to have any unspent budget at the end of a line’s current schedule automatically moved to the budget of its next schedule.

      • true - budget rollover is enabled.

      • false - budget rollover is disabled.

      Important:

      • Budget rollover is only supported for multi-schedule lines.

      • If a schedule has no spend, rollover will not occur for that schedule.

      • The rollover will occur within 6 hours of the current schedule ending.

      • Any schedules that ended for a line before enabling budget rollover will not have their unspent budgets moved.

      • Any unspent budget will continue to move from schedule to schedule until enableBudgetRollover is disabled. The field can be enabled or disabled at any time.

      • Any over delivery for a line’s schedule will not be moved into the next schedule.

      boolean

      Optional

      Optional

      bidShadingOptOut

      Allows you to disable bid shading for a line.

      • true - bid shading is disabled

      • false - bid shading is enabled

      Note: Set to false when campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      Boolean

      Optional

      Optional

      Schedules Object

      The schedules object contains the following fields:

      Field

      Description

      Data Type

      Create

      Update

      id

      Specifies ID of the budget schedule.

      integer

      N/A

      N/A

      name

      Specifies the name of the schedule.

      Required when specifying multiple schedules.

      string

      Required 

      Optional

      startDateStr

      Specifies the start date of the line in the yyyy-MM-dd format.

      string

      Required

      Required

      endDateStr

      Specifies the end date of the line in the yyyy-MM-dd format.

      string

      Required

      Required

      budget

      Specifies the total budget of the line.

      Required when the budgetType is CURRENCY.

      number

      Required 

      Optional

      dailyBudget

      Specifies the daily budget amount.

      Required when the budgetType is CURRENCY and dailyBudgetType is SPECIFIED_AMOUNT.

      number

      Required 

      Optional

      impBudget

      Specifies the total number of impressions bought.

      Required when budgetType is IMPRESSION.

      integer

      Required 

      Optional 

      impDailyBudget

      Specifies the total number of impressions bought per day.

      Required when budgetType is IMPRESSION.

      number

      Required 

      Optional 

      dailyBudgetType

      Specifies the daily budget type.

      Allowed values:

      • SPECIFIED_AMOUNT: Specify a daily spend cap for the line during the schedule period.

      • AUTO_ALLOCATED: Allocation based on the overall budget and the number of days left in the schedule.

      string

      Required

      Optional

      isScheduleDeleted

      Specifies whether to delete a schedule. To delete a schedule, set the value to true.

      Note: Only schedules that are set in the future and part of a multi-schedule line can be deleted.

      boolean

      N/A

      Optional

      FeeList Object

      Note

      This feature is only available for self-serve accounts.

      The feeList object contains the following fields:

      Field

      Description

      Data Type

      Create

      Update

      id

      Specifies the line fee ID.

      integer

      N/A

      Required

      name

      Specifies a user-defined name.

      string

      Required

      Optional

      fee

      Specifies the CPM amount: the amount you must pay per thousand impressions.

      number

      Required

      Optional

      typeName

      Specifies the variable cost type.

      Allowed values:

      • AD_SERVING: Track external ad serving cost.

      • AD_VERIFICATION: Track external ad verification cost.

      • AUDIENCE_MEASUREMENT: Track external ad measurement cost.

      • BRAND_SAFETY: Track external brand safety cost.

      • VIEWABILITY: Track external viewability cost.

      • OTHER: Any additional external cost.

      Note: Once a variable cost is created, its type cannot be changed.

      string

      Required

      N/A

      ConversionList Object

      Yahoo DSP can optimize a line with multiple conversion rules when you establish conversion values.

      To obtain the available conversions, refer to Read Advertiser Beacon Lookups.

      Each entry in the conversionList object contains the following fields:

      Field

      Description

      Data Type

      Create

      Update

      id

      Specifies the conversion pixel ID.

      integer

      N/A

      Required

      name

      Name of the conversion pixel. The name can not be specified or changed.

      string

      N/A

      N/A

      beaconId

      Specifies the conversion pixel ID.

      integer

      Required

      Required

      lineId

      Specifies the line ID.

      Note: When updating an existing conversion, setting this field to 0 will remove the conversion.

      integer

      Optional

      Required

      acceptViewThrough

      Specifies whether a view through is accepted.

      boolean

      Required

      Optional

      clickWindow

      Specifies the amount of time after a click that the conversion is tracked.

      integer

      Required

      Optional

      clickWindowUnitType

      Specifies the click window unit type.

      Allowed values:

      • DAY: If specified, clickWindow can have a minimum value of 1 and maximum value of 45.

      • HOUR: If specified, clickWindow can have a minimum value of 1 and maximum value of 48.

      • MINUTE: If specified, clickWindow can have a minimum value of 1 and maximum value of 240.

      string

      Required

      Optional

      viewWindow

      Specifies the time after the impression that conversion is tracked.

      integer

      Required

      Optional

      viewWindowUnitType

      Specifies the unit type of the view window.

      Allowed values:

      • DAY: If specified, viewWindow can have a minimum value of 1 and maximum value of 45.

      • HOUR: If specified, viewWindow can have a minimum value of 1 and maximum value of 48.

      • MINUTE: If specified, viewWindow can have a minimum value of 1 and maximum value of 240.

      string

      Required

      Optional

      viewBeaconValueDiscount

      Specifies the discount value percentage. If no value is specified, defaults to 0.

      Note:  viewBeaconValueDiscount is set to 0 when the campaign yahooBlueprintPerformance is set to true, refer to Campaigns.

      number

      Optional

      Optional

      beaconValuePc

      Specifies the value of each conversion.

      number

      Required

      Optional

      isReportingOnly

      Specifies if the conversion pixel is for reporting purposes only. This option can only be employed when line goalType is CPA, CPIA, ROAS. If no value is specified, defaults to false and the conversion pixel can be used for optimization.

      • true: for reporting only.

      • false: can be used for optimization.

      boolean

      Optional

      Optional

      Bid Multiplier Cap Object

      The bidMultiplierCap object contains the following fields:

      Field

      Description

      Data Type

      Create

      Update

      multiplierCap

      The current bid multiplier cap for the line.

      number

      N/A

      N/A

      Read Line

      Get data for a specific line.

      GET /traffic/lines/{id}

      Parameters

      Parameters

      Parameter Type

      Description

      Data Type

      Required

      lineId

      path

      Specifies the line ID.

      integer

      Y

      Example Request URL

      GET https://dspapi.admanagerplus.yahoo.com/traffic/lines/630162

      Example Response

      {
        "response": {
          "id": 630162,
          "name": "display-line-multi-budget-15",
          "orderId": 462137,
          "bidPrice": 1,
          "goalAmount": 1.34,
          "maxGoal": 1.34,
          "marginGoal": 25,
          "billingPrice": 1,
          "completionThreshold": 0,
          "isNativeEnabled": false,
          "status": "PAUSED",
          "pacingModeType": "EVEN",
          "mediaType": "DISPLAY",
          "goalModeType": "SOFT",
          "goalType": "CPC",
          "billingMethodType": "MARGIN",
          "marginType": "TOTAL_BUDGET",
          "budgetType": "CURRENCY",
          "schedules": [
            {
              "id": 1307654,
              "name": "s2",
              "budget": 2000,
              "startDateStr": "2020-09-29T05:00:00Z",
              "endDateStr": "2020-12-29T05:59:59Z",
              "dailyBudgetType": "AUTO_ALLOCATED"
            },
            {
              "id": 1307653,
              "name": "s1",
              "budget": 1000,
              "dailyBudget": 150,
              "startDateStr": "2020-08-11T05:00:00Z",
              "endDateStr": "2020-09-29T04:59:59Z",
              "dailyBudgetType": "SPECIFIED_AMOUNT"
            }
          ],
          "feeList": [
            {
              "id": 12584,
              "name": "amc",
              "fee": 0.86,
              "typeName": "AD_SERVING"
            }
          ],
          "conversionList": [
            {
              "id": 7386,
              "lineId": 630162,
              "beaconId": 15776560,
              "acceptViewThrough": true,
              "clickWindow": 4,
              "viewWindow": 2,
              "name": "test rule 1",
              "viewBeaconValueDiscount": 0,
              "beaconValuePc": 1.05,
              "clickWindowUnitType": "DAY",
              "isReportingOnly": false,
              "viewWindowUnitType": "HOUR"
            }
          ]
        },
        "errors": null,
        "timeStamp": "2020-07-14T02:03:50.037Z"
      }

      Read Lines

      Get a filtered list of lines.

      GET /traffic/lines?orderId={orderId}&query={query}&page={page}&limit={limit}&sort={sort}&dir={dir}

      All of the accepted parameters are query parameters.

      Parameters

      Parameter

      Description

      Data Type

      Required

      orderId

      Specifies the campaign ID.

      integer

      Y

      query

      Specifies the search term.

      Use URL encoding conventions (i.e. a space should be replaced with a + or %20).

      string

      N

      page

      Specifies the page number.

      integer

      N

      limit

      Specifies the total number of items to return. Maximum allowed value is 100.

      integer

      N

      sort

      Specifies the column to sort by.

      string

      N

      dir

      Specifies the sort direction. Allowed values:

      • ASC: data is sorted in ascending order.

      • DESC: data is sorted in descending order.

      string

      N

      Example Request URL

      GET https://dspapi.admanagerplus.yahoo.com/traffic/lines?orderId=462137&limit=2&sort=id&dir=desc&seatId=2

      Example Response

      {
        "response": [
          {
            "id": 630162,
            "name": "display-line-multi-budget-15",
            "orderId": 462137,
            "bidPrice": 1,
            "goalAmount": 1.34,
            "maxGoal": 1.34,
            "marginGoal": 25,
            "billingPrice": 1,
            "completionThreshold": 0,
            "isNativeEnabled": false,
            "status": "PAUSED",
            "pacingModeType": "EVEN",
            "mediaType": "DISPLAY",
            "goalModeType": "SOFT",
            "goalType": "CPC",
            "billingMethodType": "MARGIN",
            "marginType": "TOTAL_BUDGET",
            "budgetType": "CURRENCY",
            "schedules": [
              {
                "id": 1307654,
                "name": "s2",
                "budget": 2000,
                "startDateStr": "2020-09-29T05:00:00Z",
                "endDateStr": "2020-12-29T05:59:59Z",
                "dailyBudgetType": "AUTO_ALLOCATED"
              },
              {
                "id": 1307653,
                "name": "s1",
                "budget": 1000,
                "dailyBudget": 150,
                "startDateStr": "2020-08-11T05:00:00Z",
                "endDateStr": "2020-09-29T04:59:59Z",
                "dailyBudgetType": "SPECIFIED_AMOUNT"
              }
            ],
            "feeList": [
              {
                "id": 12584,
                "name": "amc",
                "fee": 0.86,
                "typeName": "AD_SERVING"
              }
            ],
            "conversionList": [
              {
                "id": 7386,
                "lineId": 630162,
                "beaconId": 15776560,
                "acceptViewThrough": true,
                "clickWindow": 4,
                "viewWindow": 2,
                "name": "test rule 1",
                "viewBeaconValueDiscount": 0,
                "beaconValuePc": 1.05,
                "clickWindowUnitType": "DAY",
                "isReportingOnly": false,
                "viewWindowUnitType": "HOUR"
              }
            ]
          },
          {
            "id": 630161,
            "name": "display-line-multi-budget-12",
            "orderId": 462137,
            "bidPrice": 1,
            "goalAmount": 1.34,
            "maxGoal": 1.34,
            "marginGoal": 25,
            "billingPrice": 1,
            "completionThreshold": 0,
            "isNativeEnabled": false,
            "status": "PAUSED",
            "pacingModeType": "EVEN",
            "mediaType": "DISPLAY",
            "goalModeType": "SOFT",
            "goalType": "CPC",
            "billingMethodType": "MARGIN",
            "marginType": "TOTAL_BUDGET",
            "budgetType": "CURRENCY",
            "schedules": [
              {
                "id": 1307652,
                "name": "s2",
                "budget": 2000,
                "startDateStr": "2020-09-29T05:00:00Z",
                "endDateStr": "2020-12-29T05:59:59Z",
                "dailyBudgetType": "AUTO_ALLOCATED"
              },
              {
                "id": 1307651,
                "name": "s1",
                "budget": 1000,
                "dailyBudget": 150,
                "startDateStr": "2020-08-11T05:00:00Z",
                "endDateStr": "2020-09-29T04:59:59Z",
                "dailyBudgetType": "SPECIFIED_AMOUNT"
              }
            ],
            "feeList": [],
            "conversionList": []
          }
        ],
        "errors": null,
        "timeStamp": "2020-07-14T02:28:12.227Z"
      }

      Create Line

      Create a new line.

      POST /traffic/lines/
      • To create a display line, specify DISPLAY as the line’s mediaType value.

      • To create a video line, specify VIDEO as the line’s mediaType value.

      • To create an audio line, specify AUDIO as the line’s mediaType value.

      • To create a DOOH line, specify DOOH as the line’s channelType value.

      • To create a CTV line, specify CTV as the line’s channelType value.

      Important

      A line cannot be created in ACTIVE status. Use PAUSED or INACTIVE status instead. After at least one type of geography targeting is enabled, the line can be activated with a PUT request. Refer to Geography Targeting and Example: Activate Paused Line for more details.

      Parameters

      All fields are specified in the body of application/json payload.

      Example Request URL

      POST https://dspapi.admanagerplus.yahoo.com/traffic/lines

      Example: Create (Margin) oCPM Display Line

      To create a DISPLAY line with MARGIN (oCPM) billing type, refer to the table and payload below.

      Field

      Value

      Type

      mediaType

      DISPLAY

      string

      billingMethodType

      MARGIN

      string

      billingPrice

      Desired % profit margin

      number

      Example Request Body

      {
        "name": "display-line-ocpm-1",
        "orderId": 462137,
        "status": "PAUSED",
        "mediaType": "DISPLAY",
        "pacingModeType": "EVEN",
        "budgetType": "CURRENCY",
        "goalType": "CPC",
        "billingMethodType": "MARGIN",
        "billingPrice": 2,
        "marginType": "TOTAL_BUDGET",
        "bidPrice": 1,
        "maxGoal": 1,
        "marginGoal": 25,
        "goalAmount": 1,
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "startDateStr": "2020-09-29",
            "endDateStr": "2020-12-28",
            "budget": 2000,
            "dailyBudgetType": "AUTO_ALLOCATED"
          }
        ]
      }

      Example: Create oCPC Display Line

      To create a DISPLAY line with oCPC goal type, refer to the table and payload below.

      Field

      Value

      Type

      mediaType

      DISPLAY

      string

      billingMethodType

      CPM_PRICE

      string

      goalType

      OCPC

      string

      goalAmount

      Target CPC

      number

      marginGoal

      Profit Margin Goal %

      number

      Example Request Body

      {
        "name": "display-line-ocpc-1",
        "orderId": 462137,
        "mediaType": "DISPLAY",
        "billingMethodType": "CPM_PRICE",
        "billingPrice": 1,
        "marginType": "TOTAL_BUDGET",
        "bidPrice": 1,
        "goalType": "OCPC",
        "maxGoal": 1.1,
        "marginGoal": 25,
        "status": "PAUSED",
        "goalAmount": 1.1,
        "pacingModeType": "EVEN",
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2020-09-28",
            "budget": 1000,
            "dailyBudget": 150,
            "dailyBudgetType": "SPECIFIED_AMOUNT"
          }
        ]
      }

      Example: Create CPCV Video Line

      To create a VIDEO line with CPCV billing and goal, refer to the table and payload below.

      Field

      Value

      Type

      mediaType

      VIDEO

      string

      billingMethodType

      CPCV

      string

      goalType

      CPCV

      string

      billingPrice

      Amount you want to pay for each completed video view

      number

      bidPrice

      Max CPM price

      number

      goalAmount

      Target CPCV

      number

      pacingMode

      EVEN

      string

      maxGoal

      Maximum goal price

      number

      Example Request Body

      {
        "name": "video-line-cpcv-single-budget-1",
        "orderId": 462137,
        "status": "PAUSED",
        "mediaType": "VIDEO",
        "pacingModeType": "EVEN",
        "budgetType": "CURRENCY",
        "goalType": "CPCV",
        "billingMethodType": "CPCV",
        "billingPrice": 1,
        "marginType": "TOTAL_BUDGET",
        "bidPrice": 1,
        "maxGoal": 1,
        "marginGoal": 25,
        "goalAmount": 1,
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2021-01-28",
            "budget": 1000,
            "dailyBudget": 150,
            "dailyBudgetType": "SPECIFIED_AMOUNT"
          }
        ]
      }

      Example: Create Line with Currency Daily Budget & Single Schedule

      To create a DISPLAY line with a specified daily budget and a single budget schedule, refer to the table and payload below.

      Field

      Value

      Type

      mediaType

      DISPLAY

      string

      budgetType

      CURRENCY

      string

      goalType

      CPC

      string

      goalAmount

      Target CPC

      number

      marginGoal

      Profit Margin Goal %

      number

      Example Request Body

      {
        "name": "display-line-single-budget-1",
        "orderId": 462137,
        "status": "PAUSED",
        "mediaType": "DISPLAY",
        "budgetType": "CURRENCY",
        "goalType": "CPC",
        "billingMethodType": "MARGIN",
        "billingPrice": 1,
        "marginType": "TOTAL_BUDGET",
        "pacingModeType": "EVEN",
        "bidPrice": 1,
        "marginGoal": 25,
        "goalAmount": 1.34,
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2021-01-28",
            "budget": 1000,
            "dailyBudget": 150,
            "dailyBudgetType": "SPECIFIED_AMOUNT"
          }
        ],
        "conversionList": [
          {
            "beaconId": 15776560,
            "acceptViewThrough": true,
            "clickWindow": 4,
            "viewWindow": 2,
            "viewBeaconValueDiscount": 0,
            "beaconValuePc": 1.05,
            "clickWindowUnitType": "DAY",
            "viewWindowUnitType": "HOUR"
          }
        ],
        "feeList": [
          {
            "typeName": "AD_SERVING",
            "name": "amc",
            "fee": 0.86
          }
        ]
      }

      Example: Create Impression Budget Video Line

      To create a VIDEO line with auto allocated Impression-based budget, refer to the table and payload below.

      Field

      Value

      Type

      mediaType

      VIDEO

      string

      billingMethodType

      CPM_PRICE

      string

      billingPrice

      Amount you want to pay for each 1000 impressions

      number

      schedules.impBudget

      Total number of impressions you plan to buy

      integer

      schedules.dailyBudgetType

      AUTO_ALLOCATED

      string

      Example Request Body

      {
        "name": "video-line-single-budget-imp-6",
        "orderId": 462137,
        "bidPrice": 9,
        "marginGoal": 25,
        "billingPrice": 9,
        "isNativeEnabled": false,
        "completionThreshold": 60,
        "pacingAcceleration": 0,
        "status": "PAUSED",
        "pacingModeType": "EVEN",
        "mediaType": "VIDEO",
        "goalType": "COMPLETION_HARD_THRESHOLD",
        "goalAmount": 1.1,
        "maxGoal": 1.15,
        "budgetType": "IMPRESSION",
        "billingMethodType": "CPM_PRICE",
        "marginType": "TOTAL_BUDGET",
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2021-01-28",
            "impBudget": 7111,
            "dailyBudgetType": "AUTO_ALLOCATED"
          }
        ]
      }

      Example: Create Multiple Budget Line

      To create a line with multiple budgets, refer to the payload below.

      Example Request Body

      {
        "name": "display-line-multi-budget-1",
        "orderId": 462137,
        "status": "PAUSED",
        "mediaType": "DISPLAY",
        "budgetType": "CURRENCY",
        "goalType": "CPC",
        "billingMethodType": "MARGIN",
        "billingPrice": 1,
        "marginType": "TOTAL_BUDGET",
        "pacingModeType": "EVEN",
        "bidPrice": 1,
        "marginGoal": 25,
        "goalAmount": 1.34,
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "name": "s1",
            "startDateStr": "2020-08-11",
            "endDateStr": "2020-09-28",
            "budget": 1000,
            "dailyBudget": 150,
            "dailyBudgetType": "SPECIFIED_AMOUNT"
          },
          {
            "name": "s2",
            "startDateStr": "2020-09-29",
            "endDateStr": "2020-12-28",
            "budget": 2000,
            "dailyBudgetType": "AUTO_ALLOCATED"
          }
        ]
      }

      Example: Create Line with AppMarketing Objective

      To create a line with CPI goal and app marketing objective, refer to the table and payload below.

      Note

      At least one conversion pixel is required when the goal type is CPI.

      Field

      Value

      Type

      appMarketingObjective

      RE_ENGAGEMENT

      string

      appUrl

      App URL

      string

      appLocale

      en-us

      string

      conversionList

      Conversion pixel

      array

      Example Request Body

      {
        "name": "test-video5599",
        "orderId": 312515,
        "status": "PAUSED",
        "mediaType": "VIDEO",
        "pacingModeType": "EVEN",
        "budgetType": "CURRENCY",
        "goalType": "CPI",
        "billingMethodType": "CPCV",
        "dailyBudgetType": "SPECIFIED_AMOUNT",
        "dailyBudget": 1.25,
        "billingPrice": 1,
        "marginType": "TOTAL_BUDGET",
        "bidPrice": 1,
        "maxGoal": 1,
        "marginGoal": 25,
        "goalAmount": 1,
        "isNativeEnabled": false,
        "completionThreshold": 0,
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2021-01-28",
            "impBudget": 7111,
            "dailyBudgetType": "AUTO_ALLOCATED"
          }
        ],
        "appMarketingObjective": "RE_ENGAGEMENT",
        "appUrl": "https://apps.apple.com/us/app/colorsnap-visualizer-iphone/id316256242&locale=en-us",
        "appLocale": "en-us",
        "conversionList": [
          {
            "beaconId": 15776560,
            "acceptViewThrough": true,
            "clickWindow": 4,
            "viewWindow": 2,
            "viewBeaconValueDiscount": 0,
            "beaconValuePc": 1.05,
            "clickWindowUnitType": "DAY",
            "viewWindowUnitType": "HOUR"
          }
        ]
      }

      Example: Create DOOH Line

      To create a Digital-Out-Of-Home line, refer to the table and payload below.

      Field

      Value

      Type

      channelType

      DOOH

      string

      mediaType

      DISPLAY or VIDEO

      string

      billingMethodType

      MARGIN or CPM_PRICE

      string

      conversionList

      Should be empty array

      array

      goalType

      Should be NONE

      string

      Example Request Body

      {
          "name": "display-DOOH-line",
          "orderId": 235472,
          "status": "PAUSED",
          "mediaType": "DISPLAY",
          "pacingModeType": "EVEN",
          "budgetType": "CURRENCY",
          "billingMethodType": "CPM_PRICE",
          "billingPrice": 0.1,
          "marginType": "TOTAL_BUDGET",
          "bidPrice": 0.1,
          "maxGoal": 1,
          "marginGoal": 25,
          "goalAmount": 1,
          "isNativeEnabled": false,
          "completionThreshold": 0,
          "goalType":"NONE",
          "channelType":"DOOH",
          "schedules": [
              {
                  "startDateStr": "2022-07-21",
                  "endDateStr": "2022-07-25",
                  "budget": 1,
                  "dailyBudgetType": "AUTO_ALLOCATED"
              }
          ]
      }

      Example: Create a CTV Line

      To create a Connected TV line, refer to the table and payload below.

      Field

      Value

      Type

      channelType

      CTV

      string

      mediaType

      VIDEO

      string

      Example Request Body

      {
          "name": "CTV line",
          "orderId": 1675983,
          "status": "PAUSED",
          "mediaType": "VIDEO",
          "pacingModeType": "EVEN",
          "budgetType": "CURRENCY",
          "billingMethodType": "CPM_PRICE",
          "billingPrice": 0.1,
          "marginType": "TOTAL_BUDGET",
          "bidPrice": 0.1,
          "maxGoal": 1,
          "marginGoal": 25,
          "goalAmount": 1,
          "isNativeEnabled": false,
          "completionThreshold": 0,
          "goalType":"NONE",
          "channelType":"CTV",
          "schedules": [
              {
                  "startDateStr": "2024-01-09",
                  "endDateStr": "2024-01-25",
                  "budget": 1,
                  "dailyBudgetType": "AUTO_ALLOCATED"
              }
          ]

      Update Line

      Update an existing line.

      PUT /traffic/lines/{id}

      Partial updates are supported (with the exception of feeList, refer to note below); values of supported fields which are not in the payload will remain unchanged.

      Note

      When updating variable costs using feeList, any existing entries will be removed automatically unless they included in the payload.

      Parameters

      The Line id is specified in the url path. All other fields are specified in the body of the application/json payload.

      Example: Activate Paused Line

      The following payload shows how to change the line status from PAUSED to ACTIVE.

      Example Request Body

      {
        "status": "ACTIVE"
      }

      Example: Update Line Budget & Start/End Dates

      The following payload shows how to update the total budget and start/end dates of a line.

      Example Request Body

      {
        "schedules": [
          {
            "startDateStr": "2020-08-11",
            "endDateStr": "2021-01-31",
            "impBudget": 10000
          }
        ]
      }

      Example: Update Line with Conversion Pixel

      The following payload shows how to add a conversion pixel to an existing line.

      Example Request Body

      {
        "conversionList": [
          {
            "lineId": 355775,
            "beaconId": 762,
            "acceptViewThrough": true,
            "viewWindow": 2,
            "clickWindow": 4,
            "clickWindowUnitType": "DAY",
            "viewWindowUnitType": "HOUR",
            "beaconValuePc": 1.2
          }
        ]
      }

      Example: Remove an Existing Conversion Pixel

      The following payload shows how to remove an existing conversion pixel from a line. An existing conversion pixel can be removed by setting lineId to 0.

      Example Request Body

      {
        "conversionList": [
          {
            "id": 144856,
            "lineId": 0,
            "beaconId": 762
          }
        ]
      }

      Remove Future Schedules for Multi-Schedule Lines

      Schedules set in the future for multi-schedule lines can be removed.

      PUT /traffic/lines/{id}

      To delete a schedule, set isScheduleDeleted to true in the specific budget schedule object.

      Parameters

      Specify the Line id in the URL path and all other fields in the request body.

      Sample Request URL

      PUT https://dspapi.admanagerplus.yahoo.com/traffic/lines/2188261

      Sample Request Body

      {
          "schedules": [
              {
                  "id": 2232962,
                  "name": "sc1",
                  "budget": 100.0,
                  "startDateStr": "2022-07-18",
                  "endDateStr": "2022-07-29",
                  "dailyBudgetType": "AUTO_ALLOCATED"
              },
              {
                  "id": 2388411,
                  "name": "sc2",
                  "budget": 100.0,
                  "startDateStr": "2022-11-12",
                  "endDateStr": "2022-11-29",
                  "dailyBudgetType": "AUTO_ALLOCATED",
                  "isScheduleDeleted": true
              }
          ]
      }

      Sample Response

      {
          "response": {
              "id": 2188261,
              "name": "MultiLine-1",
              "orderId": 429394,
              "bidPrice": 1.0,
              "goalAmount": 1.0,
              "maxGoal": 1.0,
              "billingPrice": 50.0,
              "completionThreshold": 0.0,
              "isNativeEnabled": false,
              "channelType": "DEFAULT",
              "status": "PAUSED",
              "pacingModeType": "EVEN",
              "mediaType": "DISPLAY",
              "goalModeType": "SOFT",
              "goalType": "CPC",
              "billingMethodType": "MARGIN",
              "marginType": "TOTAL_BUDGET",
              "budgetType": "CURRENCY",
              "schedules": [
                  {
                     "id": 2232962,
                     "name": "sc1",
                     "budget": 100.0,
                     "startDateStr": "2022-07-18T07:00:00Z",
                     "endDateStr": "2022-07-30T06:59:59Z",
                     "dailyBudgetType": "AUTO_ALLOCATED"
                  }
              ],
              "feeList": [],
              "conversionList": []
          },
          "errors": null,
          "timeStamp": "2022-10-12T10:27:11.607Z"
      }

      Delete Lines

      The DSP Traffic API does not support deletion of lines.


      Was this article helpful?

      What's Next