Skip to main content

Yahoo DSP API Connector

Updated over 2 weeks ago
Yahoo DSP adopts IAB Tech Lab's transparency 'nutrition label'

Overview

The Oath-Brightroll integration ingests campaign performance data from Yahoo’s DSP platform into our data warehouse. It consists of two main scheduled jobs:

  1. Data Import Job – Pulls delivery data (impressions, clicks, video views, conversions, etc.) at a daily granularity.

  2. Meta Refresh Job – Retrieves up-to-date metadata for campaigns and creatives.

The imported data is processed to populate base metrics, composite performance calculations, and dimensional breakdowns. This enables reporting on spend efficiency, engagement rates, and video performance.


Connection Options

Key

Type

Required

Description

Hint

Size

yahoo_advertiser_ids

text

Yes

Oath-Brightroll Advertiser ID

This is a numeric value next to your username in the dropdown

30

yahoo_client_id

text

Yes

Yahoo DSP API Client ID

Yahoo Client ID generated in the UI for API integrations

30

yahoo_client_secret

text

Yes

Yahoo DSP API Client Secret

Yahoo Client Secret generated in the UI for API integrations

30

For more information on how to access these credentials please follow this link.
​It should give you detailed guide on how to find the advertiser IDs and generate a Client ID and Secret.


Jobs

1. Oath-Brightroll Data Import

  • Feed: oath_brightroll

  • Type: Data

  • Target Table: oath_data_delivery

  • Description: Oath Data Import

  • Update Mode: Append

  • Date Column: day

  • Lookback: 5 days

  • Run Hour: 6

  • Poll Frequency: 24 hours

2. Oath-Brightroll Meta Refresh

  • Feed: oath_brightroll

  • Type: Lookup

  • Targets:

    • oath_meta_campaign – Campaign Meta (Priority 1)

    • oath_meta_creative – Creative Meta (Priority 2)

  • Update Mode: Refresh

  • Lookback: 1 day

  • Run Hour: 6

  • Poll Frequency: 24 hours


Dimensions

Name

Source Field

Advertiser [Yahoo]

oath_data_delivery.advertiser

Order [Yahoo]

oath_data_delivery.order

Publisher [Yahoo]

dcm_meta_site.publisher

Campaign [Yahoo]

oath_meta_campaign.value

Creative [Yahoo]

oath_meta_creative.name


Base Metrics

Name

Formula

Format

Spend [Yahoo]

SUM({oath_data_delivery.advertiser_spending_advertiser_currency})

£, 2dp

Clicks [Yahoo]

SUM({oath_data_delivery.clicks})

int

Impressions [Yahoo]

SUM({oath_data_delivery.impressions})

int

Video Views Quartile - 25% [Yahoo]

SUM({oath_data_delivery.25pct_complete})

int

Video Views Quartile - 50% [Yahoo]

SUM({oath_data_delivery.50pct_complete})

int

Video Views Quartile - 75% [Yahoo]

SUM({oath_data_delivery.75pct_complete})

int

Video Completes [Yahoo]

SUM({oath_data_delivery.100pct_complete})

int

Video Views [Yahoo]

SUM({oath_data_delivery.start_views})

int

Measurable Impressions [Yahoo]

SUM({oath_data_delivery.measurable_impressions})

int

Non Measurable Impressions [Yahoo]

SUM({oath_data_delivery.nonmeasurable_impressions})

int

Conversions [Yahoo]

SUM({oath_data_delivery.conversion})

int

VT Conversions [Yahoo]

SUM({oath_data_delivery.view_through_conversion})

int

CT Conversions [Yahoo]

SUM({oath_data_delivery.click_through_conversion})

int


Composite Metrics

Name

Formula

Format

CTR [Yahoo]

({Clicks [Yahoo]}/{Impressions [Yahoo]})*100

%, 2dp

CPM [Yahoo]

({Spend [Yahoo]} / {Impressions [Yahoo]}) * 1000

£, 2dp

CPC [Yahoo]

{Spend [Yahoo]} / {Clicks [Yahoo]}

£, 2dp

VCR [Yahoo]

({Video Completes [Yahoo]} / {Video Views [Yahoo]}) * 100

%, 2dp

VTR [Yahoo]

({Video Completes [Yahoo]} / {Impressions [Yahoo]}) * 100

%, 2dp

CPCV [Yahoo]

{Spend [Yahoo]} / {Video Completes [Yahoo]}

£, 2dp


Data Joins

Left Table Field

Right Table Field

creative_id (delivery)

oath_meta_creative.id

Did this answer your question?