openapi: 3.0.3 components: responses: BadRequest: content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid NotFound: content: application/json: schema: $ref: '#/components/schemas/Error' description: The requested resource could not be found ServerError: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred Unauthorized: content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized schemas: Error: example: error_code: BadRequest message: 'field does not exist in this dataset: campaign_id_test' request_id: 74K33s47Yd1ns97E9RZsfFhn1Gj0ehYs properties: error_code: type: string message: type: string request_id: type: string type: object StreamingResponse: description: >- Documentation available at https://apidocs.mediamath.com/docs/reporting-api-v2 example: >- {"fields":[{"name":"agg_timestamp"},{"name":"campaign_id"},{"name":"impressions"}],"total_items_count":14} {"campaign_id":1,"impressions":93283,"agg_timestamp":"2023-07-27T12:00:00Z"} {"campaign_id":2,"impressions":474,"agg_timestamp":"2023-07-27T12:00:00Z"} {"meta":{}} {"campaign_id":3,"impressions":45775,"agg_timestamp":"2023-07-27T12:00:00Z"} title: Streaming Response type: string securitySchemes: Auth0: flows: authorizationCode: authorizationUrl: https://auth.mediamath.com/authorize refreshUrl: https://auth.mediamath.com/authorize?scope=offline_access scopes: offline_access: for refresh tokens tokenUrl: https://auth.mediamath.com/oauth/token type: oauth2 info: contact: email: developers@mediamath.com name: Support url: https://mediamathsupport.force.com/ description: > OpenAPI 3.0 spec of the Reporting API. > ### Beta datasets > > Datasets marked as **(beta)** are subject to change or removal without prior notice, and are offered as is with no support. title: Reporting API V2 version: 1.0.0 paths: /all-dimensions-and-metrics: post: description: "\nStandard performance metrics in campaign currency and broken out by our widest array of dimensions.\nAvailable in custom date ranges or intervals with the option to aggregate by day, week, or month.\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `yesterday`, `last_X_days`, `month_to_date`|`by_day`, `by_week`, `by_month`|\n|`ads_txt_type`
Ads.txt Type|Any|Any|\n|`ads_txt_verified`
Ads.txt Verified|Any|Any|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`app_id`
|Any|Any|\n|`app_name`
|Any|Any|\n|`app_store`
|Any|Any|\n|`auction_type`
|Any|Any|\n|`bid_price_impact`
|Any|Any|\n|`browser`
|Any|Any|\n|`browser_version`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`channel_type`
|Any|Any|\n|`city_id`
|Any|Any|\n|`city_name`
|Any|Any|\n|`concept_id`
|Any|Any|\n|`concept_name`
|Any|Any|\n|`conn_speed_id`
Connection Speed|Any|Any|\n|`conn_speed_name`
|Any|Any|\n|`content_title`
|Any|Any|\n|`country_id`
|Any|Any|\n|`country_name`
|Any|Any|\n|`creative_id`
|Any|Any|\n|`creative_is_native`
|Any|Any|\n|`creative_name`
|Any|Any|\n|`creative_size`
|Any|Any|\n|`creative_tpas_placement_id`
|Any|Any|\n|`deal_external_id`
|Any|Any|\n|`deal_group_id`
|Any|Any|\n|`deal_group_name`
|Any|Any|\n|`deal_id`
|Any|Any|\n|`deal_name`
|Any|Any|\n|`deal_price_type`
|Any|Any|\n|`deal_publisher_id`
Deal Publisher ID|Any|Any|\n|`device_make`
|Any|Any|\n|`device_model`
|Any|Any|\n|`dma_id`
|Any|Any|\n|`dma_name`
|Any|Any|\n|`exchange_id`
|Any|Any|\n|`exchange_name`
|Any|Any|\n|`flight_id`
|Any|Any|\n|`form_factor`
Device Type|Any|Any|\n|`inventory_browser_type`
|Any|Any|\n|`inventory_market_type`
|Any|Any|\n|`isp_id`
|Any|Any|\n|`isp_name`
|Any|Any|\n|`media_name`
|Any|Any|\n|`mm_buying_modality`
Buying Modality|Any|Any|\n|`openrtb_device_type`
OpenRTB Device Type|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`os_type`
OS Type|Any|Any|\n|`os_version`
OS Version|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`postal_code_id`
|Any|Any|\n|`postal_code_name`
|Any|Any|\n|`primary_seller_id`
|Any|Any|\n|`primary_seller_name`
|Any|Any|\n|`prisma_campaign_id`
|Any|Any|\n|`prisma_campaign_name`
|Any|Any|\n|`prisma_client_product_estimate`
|Any|Any|\n|`prisma_io_number`
|Any|Any|\n|`publisher_id`
|Any|Any|\n|`publisher_name`
|Any|Any|\n|`region_id`
|Any|Any|\n|`region_name`
|Any|Any|\n|`site_domain`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|`video_placement`
|Any|Any|\n|`video_skippability`
|Any|Any|\n|**Metrics**|\n|`calculated_impressions`
|Any|Any|\n|`clicks`
|Any|Any|\n|`ctc`
CTC|Any|Any|\n|`ctr`
CTR|Any|Any|\n|`general_invalid_clicks`
|Any|Any|\n|`impressions`
|Any|Any|\n|`in_view`
In View Impressions|Any|Any|\n|`in_view_100_percent`
100% In View Impressions|Any|Any|\n|`in_view_15_seconds`
In View - 15 Seconds|Any|Any|\n|`in_view_15_seconds_rate`
In View 15 Seconds Rate|Any|Any|\n|`in_view_5_seconds`
In View - 5 Seconds|Any|Any|\n|`in_view_5_seconds_rate`
In View 5 Seconds Rate|Any|Any|\n|`in_view_q1`
|Any|Any|\n|`in_view_q2`
|Any|Any|\n|`in_view_q3`
|Any|Any|\n|`in_view_q4`
|Any|Any|\n|`measurability_rate`
Measurability Rate|Any|Any|\n|`measurable`
Measurable Impressions|Any|Any|\n|`media_cost_non_watermark_usd`
Non-Watermark Media Cost (USD)|Any|Any|\n|`media_cost_watermark_usd`
Watermark Media Cost (USD)|Any|Any|\n|`non_watermark_impressions`
Non-Watermark Impressions|Any|Any|\n|`post_click_aov`
Post-Click AOV|Any|Any|\n|`post_click_aov_usd`
(USD) Post-Click AOV|Any|Any|\n|`post_click_conversions`
Post-Click Conversions|Any|Any|\n|`post_click_revenue`
Post-Click Revenue|Any|Any|\n|`post_click_revenue_usd`
(USD) Post-Click Revenue|Any|Any|\n|`post_click_total_spend_roi`
Post-Click Total Spend ROI|Any|Any|\n|`post_view_aov`
Post-View AOV|Any|Any|\n|`post_view_aov_usd`
(USD) Post-View AOV|Any|Any|\n|`post_view_conversions`
Post-View Conversions|Any|Any|\n|`post_view_revenue`
Post-View Revenue|Any|Any|\n|`post_view_revenue_usd`
(USD) Post-View Revenue|Any|Any|\n|`post_view_total_spend_roi`
Post-View Total Spend ROI|Any|Any|\n|`rr_per_1k_imps`
Response Rate/1K Imps|Any|Any|\n|`total_aov`
Total AOV|Any|Any|\n|`total_aov_usd`
(USD) Total AOV|Any|Any|\n|`total_clicks`
|Any|Any|\n|`total_conversions`
|Any|Any|\n|`total_revenue`
|Any|Any|\n|`total_revenue_usd`
(USD) Total Revenue|Any|Any|\n|`total_spend`
|Any|Any|\n|`total_spend_cpa`
Total Spend eCPA|Any|Any|\n|`total_spend_cpa_usd`
(USD) Total Spend eCPA|Any|Any|\n|`total_spend_cpc`
Total Spend eCPC|Any|Any|\n|`total_spend_cpc_usd`
(USD) Total Spend eCPC|Any|Any|\n|`total_spend_cpcv`
Total Spend eCPCV|Any|Any|\n|`total_spend_cpcv_usd`
(USD) Total Spend eCPCV|Any|Any|\n|`total_spend_cpm`
Total Spend eCPM|Any|Any|\n|`total_spend_cpm_usd`
(USD) Total Spend eCPM|Any|Any|\n|`total_spend_pc_cpa`
Total Spend PC CPA|Any|Any|\n|`total_spend_pc_cpa_usd`
(USD) Total Spend PC CPA|Any|Any|\n|`total_spend_pv_cpa`
Total Spend PV CPA|Any|Any|\n|`total_spend_pv_cpa_usd`
(USD) Total Spend PV CPA|Any|Any|\n|`total_spend_roi`
Total Spend ROI|Any|Any|\n|`total_spend_usd`
(USD) Total Spend|Any|Any|\n|`total_spend_vcpm`
Total Spend vCPM |Any|Any|\n|`total_spend_vcpm_usd`
(USD) Total Spend vCPM |Any|Any|\n|`video_close`
Close|Any|Any|\n|`video_collapse`
Collapse|Any|Any|\n|`video_companion_clicks`
Companion Clicks|Any|Any|\n|`video_companion_ctr`
Companion CTR|Any|Any|\n|`video_companion_impressions`
Companion Impressions|Any|Any|\n|`video_complete`
100% Completed Views|Any|Any|\n|`video_complete_rate`
100% Completed Rate|Any|Any|\n|`video_complete_rate_impression_based`
100% Completed Rate - Impressions Based|Any|Any|\n|`video_engaged_impressions`
Engaged Impressions|Any|Any|\n|`video_engaged_rate`
Engaged Rate|Any|Any|\n|`video_expand`
Expand|Any|Any|\n|`video_first_quartile`
25% Completed Views|Any|Any|\n|`video_first_quartile_rate`
25% Completed Rate|Any|Any|\n|`video_first_quartile_rate_impression_based`
25% Completed Rate - Impressions Based|Any|Any|\n|`video_fullscreen`
Fullscreen|Any|Any|\n|`video_midpoint`
50% Completed Views|Any|Any|\n|`video_midpoint_rate`
50% Completed Rate|Any|Any|\n|`video_midpoint_rate_impression_based`
50% Completed Rate - Impressions Based|Any|Any|\n|`video_mute`
Mute|Any|Any|\n|`video_pause`
Pause|Any|Any|\n|`video_play_rate`
Play Rate|Any|Any|\n|`video_resume`
Resume|Any|Any|\n|`video_rewind`
Rewind|Any|Any|\n|`video_skip`
Skip|Any|Any|\n|`video_skippable_impressions`
Skippable Impressions|Any|Any|\n|`video_skipped_impressions`
Skipped Impressions|Any|Any|\n|`video_skipped_rate`
Skipped Rate|Any|Any|\n|`video_start`
Start|Any|Any|\n|`video_third_quartile`
75% Completed Views|Any|Any|\n|`video_third_quartile_rate`
75% Completed Rate|Any|Any|\n|`video_third_quartile_rate_impression_based`
75% Completed Rate - Impressions Based|Any|Any|\n|`video_unmute`
Unmute|Any|Any|\n|`viewability_rate`
Viewability Rate|Any|Any|\n|`viewability_rate_100_percent`
100% In View Rate|Any|Any|\n|`watermark_impressions`
|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `last_X_days`, `yesterday`, `month_to_date`\n\n### Rollups\n`all`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n3 years\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: All Dimensions and Metrics tags: - Datasets /brain-feature-summary: post: description: "\nBrain Feature Summary Report\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`yesterday`, `last_X_days`, `month_to_date`|`by_day`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_name`
|Any|Any|\n|`feature`
|Any|Any|\n|`index`
|Any|Any|\n|`model_goal`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`position`
|Any|Any|\n|**Metrics**|\n\n### Pageable\nYes\n\n### Time Windows\n`yesterday`, `last_X_days`, `month_to_date`\n\n### Rollups\n`by_day`\n\n\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: last_7_days schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Brain Feature Summary tags: - Datasets /brain-feature-value: post: description: "\nBrain Feature Value Report\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`yesterday`, `last_X_days`, `month_to_date`|`by_day`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`bid_impact`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_name`
|Any|Any|\n|`feature`
|Any|Any|\n|`feature_report_type`
|Any|Any|\n|`feature_value`
|Any|Any|\n|`index`
|Any|Any|\n|`is_numeric`
|Any|Any|\n|`mean`
|Any|Any|\n|`model_goal`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`position`
|Any|Any|\n|**Metrics**|\n\n### Pageable\nYes\n\n### Time Windows\n`yesterday`, `last_X_days`, `month_to_date`\n\n### Rollups\n`by_day`\n\n\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: last_7_days schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Brain Feature Value tags: - Datasets /day-part: post: description: "\nStandard performance metrics broken out by time of day and day of week. Available in standard intervals.\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `yesterday`, `last_X_days`, `month_to_date`, `campaign_to_date`|`by_day`, `by_week`, `by_month`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`day_part_id`
Day Part ID|Any|Any|\n|`day_part_name`
Day Part in the User's Timezone|Any|Any|\n|`exchange_id`
|Any|Any|\n|`exchange_name`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|`week_day_id`
Weekday ID|Any|Any|\n|`week_day_name`
|Any|Any|\n|**Metrics**|\n|`clicks`
|Any|Any|\n|`ctc`
CTC|Any|Any|\n|`ctr`
CTR|Any|Any|\n|`general_invalid_clicks`
|Any|Any|\n|`impressions`
|Any|Any|\n|`post_click_conversions`
Post-Click Conversions|Any|Any|\n|`post_view_conversions`
Post-View Conversions|Any|Any|\n|`rr_per_1k_imps`
Response Rate/1K Imps|Any|Any|\n|`total_clicks`
|Any|Any|\n|`total_conversions`
|Any|Any|\n|`total_spend`
|Any|Any|\n|`total_spend_cpa`
Total Spend eCPA|Any|Any|\n|`total_spend_cpc`
Total Spend eCPC|Any|Any|\n|`total_spend_cpcv`
Total Spend eCPCV|Any|Any|\n|`total_spend_cpm`
Total Spend eCPM|Any|Any|\n|`total_spend_pc_cpa`
Total Spend PC CPA|Any|Any|\n|`total_spend_pv_cpa`
Total Spend PV CPA|Any|Any|\n|`video_close`
Close|Any|Any|\n|`video_collapse`
Collapse|Any|Any|\n|`video_companion_clicks`
Companion Clicks|Any|Any|\n|`video_companion_ctr`
Companion CTR|Any|Any|\n|`video_companion_impressions`
Companion Impressions|Any|Any|\n|`video_complete`
100% Completed Views|Any|Any|\n|`video_complete_rate`
100% Completed Rate|Any|Any|\n|`video_engaged_impressions`
Engaged Impressions|Any|Any|\n|`video_engaged_rate`
Engaged Rate|Any|Any|\n|`video_expand`
Expand|Any|Any|\n|`video_first_quartile`
25% Completed Views|Any|Any|\n|`video_first_quartile_rate`
25% Completed Rate|Any|Any|\n|`video_fullscreen`
Fullscreen|Any|Any|\n|`video_midpoint`
50% Completed Views|Any|Any|\n|`video_midpoint_rate`
50% Completed Rate|Any|Any|\n|`video_mute`
Mute|Any|Any|\n|`video_pause`
Pause|Any|Any|\n|`video_play_rate`
Play Rate|Any|Any|\n|`video_resume`
Resume|Any|Any|\n|`video_rewind`
Rewind|Any|Any|\n|`video_skip`
Skip|Any|Any|\n|`video_skippable_impressions`
Skippable Impressions|Any|Any|\n|`video_skipped_impressions`
Skipped Impressions|Any|Any|\n|`video_skipped_rate`
Skipped Rate|Any|Any|\n|`video_start`
Start|Any|Any|\n|`video_third_quartile`
75% Completed Views|Any|Any|\n|`video_third_quartile_rate`
75% Completed Rate|Any|Any|\n|`video_unmute`
Unmute|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `yesterday`, `last_X_days`, `month_to_date`, `campaign_to_date`\n\n### Rollups\n`all`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n1 year and CTD\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Day Part tags: - Datasets /deals: post: description: "\n\nMetrics that describe the path from a matched bid opportunity (biddable) to a delivered impression (win) for private marketplace deals. \nThe data is stored in UTC timezone and is available by hour.\n\n**NOTE: this dataset requires the use of filter `organization_id` with exactly 1 value, and `deal_id` with at least 1 value.**\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `last_X_hours`, `last_X_days`, `yesterday`, `month_to_date`|`by_hour`, `by_day`, `by_week`, `by_month`|\n|`deal_external_id`
|Any|Any|\n|`deal_group_id`
|Any|Any|\n|`deal_group_name`
|Any|Any|\n|`deal_id`
|Any|Any|\n|`deal_name`
|Any|Any|\n|`deal_price_type`
|Any|Any|\n|`deal_publisher_id`
Deal Publisher ID|Any|Any|\n|`exchange_id`
|Any|Any|\n|`exchange_name`
|Any|Any|\n|**Metrics**|\n|`bid_rate`
|Any|Any|\n|`biddables`
|Any|Any|\n|`bids`
|Any|Any|\n|`matches`
|Any|Any|\n|`win_rate`
|Any|Any|\n|`wins`
|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `last_X_hours`, `yesterday`, `last_X_days`, `month_to_date`\n\n### Rollups\n`all`, `by_hour`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n1 year\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_hour time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Deals tags: - Datasets /performance: post: description: "\nStandard Aggregated Performance Report in Campaign Currency\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `yesterday`, `last_X_days`, `month_to_date`, `campaign_to_date`|`by_day`, `by_week`, `by_month`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`concept_id`
|Any|Any|\n|`concept_name`
|Any|Any|\n|`creative_id`
|Any|Any|\n|`creative_is_native`
|Any|Any|\n|`creative_name`
|Any|Any|\n|`creative_size`
|Any|Any|\n|`creative_tpas_placement_id`
|Any|Any|\n|`deal_external_id`
|Any|Any|\n|`deal_group_id`
|Any|Any|\n|`deal_group_name`
|Any|Any|\n|`deal_id`
|Any|Any|\n|`deal_name`
|Any|Any|\n|`deal_price_type`
|Any|Any|\n|`deal_publisher_id`
Deal Publisher ID|Any|Any|\n|`exchange_id`
|Any|Any|\n|`exchange_name`
|Any|Any|\n|`flight_id`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`prisma_campaign_id`
|Any|Any|\n|`prisma_campaign_name`
|Any|Any|\n|`prisma_client_product_estimate`
|Any|Any|\n|`prisma_io_number`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|**Metrics**|\n|`clicks`
|Any|Any|\n|`ctc`
CTC|Any|Any|\n|`ctr`
CTR|Any|Any|\n|`general_invalid_clicks`
|Any|Any|\n|`impressions`
|Any|Any|\n|`in_view`
In View Impressions|Any|Any|\n|`in_view_100_percent`
100% In View Impressions|Any|Any|\n|`in_view_15_seconds`
|Any|Any|\n|`in_view_15_seconds_rate`
|Any|Any|\n|`in_view_5_seconds`
|Any|Any|\n|`in_view_5_seconds_rate`
|Any|Any|\n|`in_view_q1`
|Any|Any|\n|`in_view_q2`
|Any|Any|\n|`in_view_q3`
|Any|Any|\n|`in_view_q4`
|Any|Any|\n|`measurability_rate`
Measurability Rate|Any|Any|\n|`measurable`
Measurable Impressions|Any|Any|\n|`post_click_aov`
Post-Click AOV|Any|Any|\n|`post_click_aov_usd`
(USD) Post-Click AOV|Any|Any|\n|`post_click_conversions`
Post-Click Conversions|Any|Any|\n|`post_click_revenue`
Post-Click Revenue|Any|Any|\n|`post_click_revenue_usd`
|Any|Any|\n|`post_click_total_spend_roi`
Post-Click Total Spend ROI|Any|Any|\n|`post_view_aov`
Post-View AOV|Any|Any|\n|`post_view_aov_usd`
(USD) Post-View AOV|Any|Any|\n|`post_view_conversions`
Post-View Conversions|Any|Any|\n|`post_view_revenue`
Post-View Revenue|Any|Any|\n|`post_view_revenue_usd`
(USD) Post-View Revenue|Any|Any|\n|`post_view_total_spend_roi`
Post-View Total Spend ROI|Any|Any|\n|`rr_per_1k_imps`
Response Rate/1K Imps|Any|Any|\n|`total_aov`
Total AOV|Any|Any|\n|`total_aov_usd`
(USD) Total AOV|Any|Any|\n|`total_clicks`
|Any|Any|\n|`total_conversions`
|Any|Any|\n|`total_revenue`
|Any|Any|\n|`total_revenue_usd`
|Any|Any|\n|`total_spend`
|Any|Any|\n|`total_spend_cpa`
Total Spend eCPA|Any|Any|\n|`total_spend_cpa_usd`
(USD) Total Spend eCPA|Any|Any|\n|`total_spend_cpc`
Total Spend eCPC|Any|Any|\n|`total_spend_cpc_usd`
(USD) Total Spend eCPC|Any|Any|\n|`total_spend_cpcv`
Total Spend eCPCV|Any|Any|\n|`total_spend_cpcv_usd`
(USD) Total Spend eCPCV|Any|Any|\n|`total_spend_cpm`
Total Spend eCPM|Any|Any|\n|`total_spend_cpm_usd`
(USD) Total Spend eCPM|Any|Any|\n|`total_spend_pc_cpa`
Total Spend PC CPA|Any|Any|\n|`total_spend_pc_cpa_usd`
(USD) Total Spend PC CPA|Any|Any|\n|`total_spend_pv_cpa`
Total Spend PV CPA|Any|Any|\n|`total_spend_pv_cpa_usd`
(USD) Total Spend PV CPA|Any|Any|\n|`total_spend_roi`
Total Spend ROI|Any|Any|\n|`total_spend_usd`
|Any|Any|\n|`total_spend_vcpm`
Total Spend vCPM|Any|Any|\n|`total_spend_vcpm_usd`
(USD) Total Spend vCPM|Any|Any|\n|`uniques`
|`current_day`, `yesterday`, `last_X_days`, `month_to_date`, `campaign_to_date`|`all`, `by_day`, `by_week`, `by_month`|\n|`video_close`
Close|Any|Any|\n|`video_collapse`
Collapse|Any|Any|\n|`video_companion_clicks`
Companion Clicks|Any|Any|\n|`video_companion_ctr`
Companion CTR|Any|Any|\n|`video_companion_impressions`
Companion Impressions|Any|Any|\n|`video_complete`
100% Completed Views|Any|Any|\n|`video_complete_rate`
100% Completed Rate|Any|Any|\n|`video_complete_rate_impression_based`
VCR (Impression Based)|Any|Any|\n|`video_engaged_impressions`
Engaged Impressions|Any|Any|\n|`video_engaged_rate`
Engaged Rate|Any|Any|\n|`video_expand`
Expand|Any|Any|\n|`video_first_quartile`
25% Completed Views|Any|Any|\n|`video_first_quartile_rate`
25% Completed Rate|Any|Any|\n|`video_first_quartile_rate_impression_based`
25% Completed Rate - Impressions Based|Any|Any|\n|`video_fullscreen`
Fullscreen|Any|Any|\n|`video_midpoint`
50% Completed Views|Any|Any|\n|`video_midpoint_rate`
50% Completed Rate|Any|Any|\n|`video_midpoint_rate_impression_based`
50% Completed Rate - Impressions Based|Any|Any|\n|`video_mute`
|Any|Any|\n|`video_pause`
Pause|Any|Any|\n|`video_play_rate`
Play Rate|Any|Any|\n|`video_resume`
Resume|Any|Any|\n|`video_rewind`
Rewind|Any|Any|\n|`video_skip`
Skip|Any|Any|\n|`video_skippable_impressions`
Skippable Impressions|Any|Any|\n|`video_skipped_impressions`
Skipped Impressions|Any|Any|\n|`video_skipped_rate`
Skipped Rate|Any|Any|\n|`video_start`
Start|Any|Any|\n|`video_third_quartile`
75% Completed Views|Any|Any|\n|`video_third_quartile_rate`
75% Completed Rate|Any|Any|\n|`video_third_quartile_rate_impression_based`
75% Completed Rate - Impressions Based|Any|Any|\n|`video_unmute`
|Any|Any|\n|`viewability_rate`
Viewability Rate|Any|Any|\n|`viewability_rate_100_percent`
100% In View Rate|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `last_X_days`, `yesterday`, `month_to_date`, `campaign_to_date`\n\n### Rollups\n`all`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\nSince 2013\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Performance tags: - Datasets /performance-hourly: post: description: "\nStandard Aggregated Performance Report in Campaign Currency\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `last_X_hours`, `yesterday`, `last_X_days`, `month_to_date`|`by_hour`, `by_day`, `by_week`, `by_month`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`flight_id`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`prisma_campaign_id`
|Any|Any|\n|`prisma_campaign_name`
|Any|Any|\n|`prisma_client_product_estimate`
|Any|Any|\n|`prisma_io_number`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|**Metrics**|\n|`clicks`
|Any|Any|\n|`ctc`
CTC|Any|Any|\n|`ctr`
CTR|Any|Any|\n|`general_invalid_clicks`
|Any|Any|\n|`impressions`
|Any|Any|\n|`in_view`
In View Impressions|Any|Any|\n|`in_view_100_percent`
100% In View Impressions|Any|Any|\n|`in_view_15_seconds`
|Any|Any|\n|`in_view_15_seconds_rate`
|Any|Any|\n|`in_view_5_seconds`
|Any|Any|\n|`in_view_5_seconds_rate`
|Any|Any|\n|`measurability_rate`
Measurability Rate|Any|Any|\n|`measurable`
Measurable Impressions|Any|Any|\n|`post_click_aov`
Post-Click AOV|Any|Any|\n|`post_click_conversions`
Post-Click Conversions|Any|Any|\n|`post_click_revenue`
Post-Click Revenue|Any|Any|\n|`post_click_revenue_usd`
|Any|Any|\n|`post_click_total_spend_roi`
Post-Click Total Spend ROI|Any|Any|\n|`post_view_aov`
Post-View AOV|Any|Any|\n|`post_view_conversions`
Post-View Conversions|Any|Any|\n|`post_view_revenue`
Post-View Revenue|Any|Any|\n|`post_view_total_spend_roi`
Post-View Total Spend ROI|Any|Any|\n|`rr_per_1k_imps`
Response Rate/1K Imps|Any|Any|\n|`total_aov`
Total AOV|Any|Any|\n|`total_clicks`
|Any|Any|\n|`total_conversions`
|Any|Any|\n|`total_revenue`
|Any|Any|\n|`total_spend`
|Any|Any|\n|`total_spend_cpa`
Total Spend eCPA|Any|Any|\n|`total_spend_cpc`
Total Spend eCPC|Any|Any|\n|`total_spend_cpcv`
Total Spend eCPCV|Any|Any|\n|`total_spend_cpm`
Total Spend eCPM|Any|Any|\n|`total_spend_pc_cpa`
Total Spend PC CPA|Any|Any|\n|`total_spend_pv_cpa`
Total Spend PV CPA|Any|Any|\n|`total_spend_roi`
Total Spend ROI|Any|Any|\n|`total_spend_usd`
|Any|Any|\n|`total_spend_vcpm`
Total Spend vCPM |Any|Any|\n|`video_close`
Close|Any|Any|\n|`video_collapse`
Collapse|Any|Any|\n|`video_companion_clicks`
Companion Clicks|Any|Any|\n|`video_companion_ctr`
Companion CTR|Any|Any|\n|`video_companion_impressions`
Companion Impressions|Any|Any|\n|`video_complete`
100% Completed Views|Any|Any|\n|`video_complete_rate`
100% Completed Rate|Any|Any|\n|`video_complete_rate_impression_based`
VCR (Impression Based)|Any|Any|\n|`video_engaged_impressions`
Engaged Impressions|Any|Any|\n|`video_engaged_rate`
Engaged Rate|Any|Any|\n|`video_expand`
Expand|Any|Any|\n|`video_first_quartile`
25% Completed Views|Any|Any|\n|`video_first_quartile_rate`
25% Completed Rate|Any|Any|\n|`video_first_quartile_rate_impression_based`
25% Completed Rate - Impressions Based|Any|Any|\n|`video_fullscreen`
Fullscreen|Any|Any|\n|`video_midpoint`
50% Completed Views|Any|Any|\n|`video_midpoint_rate`
50% Completed Rate|Any|Any|\n|`video_midpoint_rate_impression_based`
50% Completed Rate - Impressions Based|Any|Any|\n|`video_mute`
|Any|Any|\n|`video_pause`
Pause|Any|Any|\n|`video_play_rate`
Play Rate|Any|Any|\n|`video_resume`
Resume|Any|Any|\n|`video_rewind`
Rewind|Any|Any|\n|`video_skip`
Skip|Any|Any|\n|`video_skippable_impressions`
Skippable Impressions|Any|Any|\n|`video_skipped_impressions`
Skipped Impressions|Any|Any|\n|`video_skipped_rate`
Skipped Rate|Any|Any|\n|`video_start`
Start|Any|Any|\n|`video_third_quartile`
75% Completed Views|Any|Any|\n|`video_third_quartile_rate`
75% Completed Rate|Any|Any|\n|`video_third_quartile_rate_impression_based`
75% Completed Rate - Impressions Based|Any|Any|\n|`video_unmute`
|Any|Any|\n|`viewability_rate`
Viewability Rate|Any|Any|\n|`viewability_rate_100_percent`
100% In View Rate|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `last_X_hours`, `last_X_days`, `yesterday`, `month_to_date`\n\n### Rollups\n`all`, `by_hour`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n90 days\n### Time Zones\n`UTC`, `campaign`\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_hour time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Performance Hourly tags: - Datasets /pixel-loads: post: description: "\nLoads and Uniques metrics for `data` and `event` pixels, broken out by referrer and referrer rank, available by day.\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `yesterday`, `last_X_days`, `month_to_date`|`by_day`, `by_week`, `by_month`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`pixel_cost_cpm`
|Any|Any|\n|`pixel_cost_cpts`
|Any|Any|\n|`pixel_cost_pct_cpm`
|Any|Any|\n|`pixel_created_on`
Pixel Creation Time|Any|Any|\n|`pixel_currency`
|Any|Any|\n|`pixel_currency_fixed`
|Any|Any|\n|`pixel_eligible`
|Any|Any|\n|`pixel_external_identifier`
|Any|Any|\n|`pixel_id`
|Any|Any|\n|`pixel_name`
|Any|Any|\n|`pixel_pricing`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_execution_by`
|Any|Any|\n|`pixel_provider_id`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_provider_tax`
|Any|Any|\n|`pixel_provider_status`
|Any|Any|\n|`pixel_provider_taxonomy_file`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_provider_vendor_id`
|Any|Any|\n|`pixel_rmx_conversion_minutes`
|Any|Any|\n|`pixel_rmx_conversion_type`
|Any|Any|\n|`pixel_rmx_friendly`
|Any|Any|\n|`pixel_rmx_merit`
|Any|Any|\n|`pixel_rmx_pc_window_minutes`
|Any|Any|\n|`pixel_rmx_pv_window_minutes`
|Any|Any|\n|`pixel_segment_op`
|Any|Any|\n|`pixel_status`
|Any|Any|\n|`pixel_tag_type`
|Any|Any|\n|`pixel_tags`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`pixel_updated_on`
Pixel Update Time|Any|Any|\n|`provider_id`
|Any|Any|\n|`referrer`
|Any|Any|\n|`referrer_rank`
|Any|Any|\n|**Metrics**|\n|`loads`
|Any|Any|\n|`uniques`
|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `yesterday`, `last_X_days`, `month_to_date`\n\n### Rollups\n`all`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n90 days\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_day time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Pixel Loads tags: - Datasets /reach-frequency: post: description: "\nBasic performance metrics as well as the \"uniques\" metric, broken out by frequency of ad exposure. Available in standard intervals.\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`frequency`
number of impressions seen by a unique user|Any|Any|\n|`frequency_bin`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|**Metrics**|\n|`clicks`
|Any|Any|\n|`ctc`
CTC|Any|Any|\n|`ctr`
CTR|Any|Any|\n|`general_invalid_clicks`
|Any|Any|\n|`impressions`
|Any|Any|\n|`post_click_conversions`
Post-Click Conversions|Any|Any|\n|`post_view_conversions`
Post-View Conversions|Any|Any|\n|`rr_per_1k_imps`
Response Rate/1K Imps|Any|Any|\n|`total_clicks`
|Any|Any|\n|`total_conversions`
|Any|Any|\n|`uniques`
|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`yesterday`, `last_7_days`, `last_14_days`, `last_30_days`, `last_60_days`, `last_90_days`\n\n### Rollups\n`all`\n\n\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: campaign_id nulls_last: true pagination: page_index: 0 page_size: 100 rollup: all time_window: last_7_days schema: properties: fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup - time_window required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Reach and Frequency tags: - Datasets /win-loss: post: description: "\nMetrics describe the auction before a win or even a bid has taken place. Broken out by strategy, exchange, and deal dimensions and available by hour.\n\n### Fields\n\n| Field | Time Windows \t| Rollups \t|\n|-------|---------------|-----------|\n|**Dimensions**|\n|`agg_timestamp`|`current_day`, `last_X_hours`, `yesterday`, `last_X_days`, `month_to_date`|`by_hour`, `by_day`, `by_week`, `by_month`|\n|`advertiser_id`
|Any|Any|\n|`advertiser_name`
|Any|Any|\n|`agency_id`
|Any|Any|\n|`agency_name`
|Any|Any|\n|`campaign_archived`
|Any|Any|\n|`campaign_conversion_type`
|Any|Any|\n|`campaign_conversion_variable_minutes`
|Any|Any|\n|`campaign_created_on`
Campaign Creation Time|Any|Any|\n|`campaign_currency_code`
Campaign Currency Code|Any|Any|\n|`campaign_custom_attribution_source`
|Any|Any|\n|`campaign_dynamic_budget_allocation_type`
|Any|Any|\n|`campaign_end_date`
(GMT) Campaign End Date|Any|Any|\n|`campaign_end_date_campaign_tz`
(CTZ) Campaign End Date|Any|Any|\n|`campaign_frequency_amount`
Campaign Frequency Amount|Any|Any|\n|`campaign_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`campaign_frequency_optimization`
Campaign Frequency Optimization|Any|Any|\n|`campaign_frequency_type`
Campaign Frequency Type|Any|Any|\n|`campaign_goal_type`
|Any|Any|\n|`campaign_goal_value`
|Any|Any|\n|`campaign_has_custom_attribution`
|Any|Any|\n|`campaign_id`
|Any|Any|\n|`campaign_impression_cap_amount`
|Any|Any|\n|`campaign_impression_cap_automatic`
|Any|Any|\n|`campaign_impression_cap_type`
|Any|Any|\n|`campaign_initial_start_date`
(GMT) Campaign Initial Start Date|Any|Any|\n|`campaign_initial_start_date_campaign_tz`
(CTZ) Campaign Initial Start Date|Any|Any|\n|`campaign_io_name`
|Any|Any|\n|`campaign_io_reference_num`
|Any|Any|\n|`campaign_is_programmatic_guaranteed`
Campaign Is Programmatic Guaranteed|Any|Any|\n|`campaign_merit_pixel_created_on`
Pixel Creation Time|Any|Any|\n|`campaign_merit_pixel_eligible`
|Any|Any|\n|`campaign_merit_pixel_external_identifier`
|Any|Any|\n|`campaign_merit_pixel_id`
|Any|Any|\n|`campaign_merit_pixel_name`
|Any|Any|\n|`campaign_merit_pixel_provider_id`
|Any|Any|\n|`campaign_merit_pixel_status`
|Any|Any|\n|`campaign_merit_pixel_tag_type`
|Any|Any|\n|`campaign_merit_pixel_tags`
|Any|Any|\n|`campaign_merit_pixel_updated_on`
Pixel Update Time|Any|Any|\n|`campaign_name`
|Any|Any|\n|`campaign_pc_window_minutes`
|Any|Any|\n|`campaign_political`
|Any|Any|\n|`campaign_pv_pct`
|Any|Any|\n|`campaign_pv_window_minutes`
|Any|Any|\n|`campaign_service_type`
Campaign Service Type, a.k.a. Managed Service Flag / managed_service_flag|Any|Any|\n|`campaign_spend_cap_amount`
|Any|Any|\n|`campaign_spend_cap_automatic`
|Any|Any|\n|`campaign_spend_cap_daily_cap`
|Any|Any|\n|`campaign_spend_cap_type`
|Any|Any|\n|`campaign_start_date`
(GMT) Campaign Start Date|Any|Any|\n|`campaign_start_date_campaign_tz`
(CTZ) Campaign Start Date|Any|Any|\n|`campaign_status`
Active Status|Any|Any|\n|`campaign_total_budget`
|Any|Any|\n|`campaign_total_impression_budget`
Campaign Impressions Budget|Any|Any|\n|`campaign_updated_on`
Campaign Update Time|Any|Any|\n|`campaign_zone_name`
Campaign Time Zone, a.k.a time_zone|Any|Any|\n|`deal_external_id`
|Any|Any|\n|`deal_group_id`
|Any|Any|\n|`deal_group_name`
|Any|Any|\n|`deal_id`
|Any|Any|\n|`deal_name`
|Any|Any|\n|`deal_price_type`
|Any|Any|\n|`deal_publisher_id`
Deal Publisher ID|Any|Any|\n|`exchange_id`
|Any|Any|\n|`exchange_name`
|Any|Any|\n|`organization_id`
|Any|Any|\n|`organization_name`
|Any|Any|\n|`pixel_provider_created_on`
|Any|Any|\n|`pixel_provider_name`
|Any|Any|\n|`pixel_provider_updated_on`
|Any|Any|\n|`pixel_type`
|Any|Any|\n|`strategy_archived`
|Any|Any|\n|`strategy_audience_segment_exclude_op`
|Any|Any|\n|`strategy_audience_segment_include_op`
|Any|Any|\n|`strategy_bid_aggressiveness`
|Any|Any|\n|`strategy_bid_price_is_media_only`
|Any|Any|\n|`strategy_budget`
|Any|Any|\n|`strategy_channel`
|Any|Any|\n|`strategy_created_on`
|Any|Any|\n|`strategy_description`
|Any|Any|\n|`strategy_end_date`
|Any|Any|\n|`strategy_exchange_type_for_run_on_all`
|Any|Any|\n|`strategy_frequency_amount`
|Any|Any|\n|`strategy_frequency_interval`
Campaign Frequency Interval|Any|Any|\n|`strategy_frequency_optimization`
|Any|Any|\n|`strategy_frequency_type`
Campaign Frequency Type|Any|Any|\n|`strategy_goal_type`
|Any|Any|\n|`strategy_goal_value`
|Any|Any|\n|`strategy_groups`
|Any|Any|\n|`strategy_id`
|Any|Any|\n|`strategy_impression_pacing_amount`
|Any|Any|\n|`strategy_impression_pacing_interval`
|Any|Any|\n|`strategy_impression_pacing_type`
|Any|Any|\n|`strategy_max_bid`
|Any|Any|\n|`strategy_max_bid_wm`
|Any|Any|\n|`strategy_min_bid`
|Any|Any|\n|`strategy_name`
|Any|Any|\n|`strategy_pacing_amount`
|Any|Any|\n|`strategy_pacing_interval`
|Any|Any|\n|`strategy_pacing_optimization_amount`
|Any|Any|\n|`strategy_pacing_optimization_type`
|Any|Any|\n|`strategy_pacing_type`
|Any|Any|\n|`strategy_roi_target`
|Any|Any|\n|`strategy_site_restriction_transparent_urls`
|Any|Any|\n|`strategy_start_date`
|Any|Any|\n|`strategy_status`
Active Status|Any|Any|\n|`strategy_targeting_segment_exclude_op`
|Any|Any|\n|`strategy_targeting_segment_include_op`
|Any|Any|\n|`strategy_updated_on`
|Any|Any|\n|`strategy_use_campaign_end`
|Any|Any|\n|`strategy_use_campaign_start`
|Any|Any|\n|`strategy_use_mm_freq`
|Any|Any|\n|`strategy_use_optimization`
|Any|Any|\n|**Metrics**|\n|`average_bid_amount_cpm`
|Any|Any|\n|`average_win_amount_cpm`
|Any|Any|\n|`bid_rate`
|Any|Any|\n|`bids`
|Any|Any|\n|`matched_bid_opportunities`
|Any|Any|\n|`max_bid_amount_cpm`
|Any|Any|\n|`max_win_amount_cpm`
|Any|Any|\n|`min_bid_amount_cpm`
|Any|Any|\n|`min_win_amount_cpm`
|Any|Any|\n|`pacing_matched_bid_opportunities`
|Any|Any|\n|`total_bid_amount_cpm`
|Any|Any|\n|`total_win_amount_cpm`
|Any|Any|\n|`win_rate`
|Any|Any|\n|`wins`
|Any|Any|\n\n### Pageable\nYes\n\n### Time Windows\n`current_day`, `last_X_hours`, `yesterday`, `last_X_days`, `month_to_date`\n\n### Rollups\n`all`, `by_hour`, `by_day`, `by_week`, `by_month`\n\n\n### Data Retention / Lookback Window\n1 year\n" requestBody: content: application/json: example: fields: - campaign_id - impressions filters: - field: organization_id op: '=' value: 123456 - field: agency_id value: - 123456 - 789012 - field: advertiser_id value: 123456 - field: campaign_name op: '=~' value: Test Campaign order: - desc: false field: agg_timestamp nulls_last: true pagination: page_index: 0 page_size: 100 rollup: by_hour time_window: current_day schema: oneOf: - required: - time_window title: Time Window - required: - start_time title: Date Range properties: end_time: format: date-time nullable: true type: string fields: items: type: string minItems: 1 type: array uniqueItems: true filters: items: properties: field: type: string filters: items: properties: field: type: string filters: description: >- An array of filters. Required if `op` is `and` or `or`. items: type: object type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 2 nullable: true type: array op: default: '=' description: |- * `=`: Equals or contains if `value` is an array * `!=`: Not equals * `>`: Greater than * `>=`: Greater than or equals * `<`: Less than * `<=`: Less than or equals * `=~`: Text contains (case-insensitive) * `and`: All filters must match * `or`: At least one filter must match * `isNull`: Is null * `isNotNull`: Is not null type: string value: anyOf: - anyOf: - type: integer - type: number - type: string - type: boolean - items: anyOf: - type: integer - type: number - type: string - type: boolean type: array type: object minItems: 1 type: array full_entities: items: type: string minItems: 1 nullable: true type: array uniqueItems: true max_results: description: >- Maximum number of results to return. Only applicable for streaming responses. No limit if absent or `null`. minimum: 1 nullable: true type: integer order: items: properties: desc: default: false type: boolean field: type: string nulls_last: default: false type: boolean required: - field type: object type: array pagination: description: >- Streaming response if absent or `null`, Paginated response otherwise nullable: true properties: page_index: minimum: 0 type: integer page_size: maximum: 10000 minimum: 1 type: integer type: object rollup: type: string start_time: format: date-time type: string time_window: type: string time_zone: description: >- **Only in supported datasets:** `campaign`, `UTC` or a time zone name defined in https://www.iana.org/time-zones type: string required: - fields - filters - rollup required: true responses: '200': content: application/json: example: meta: items_count: 3 page_index: 0 status: OK total_items_count: 3 total_pages: 1 results: - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 1 impressions: 93283 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 2 impressions: 474 - agg_timestamp: '2023-07-27T12:00:00Z' campaign_id: 3 impressions: 45775 schema: properties: meta: properties: items_count: minimum: 0 type: integer page_index: minimum: 0 type: integer status: enum: - OK type: string total_items_count: minimum: 0 type: integer total_pages: minimum: 0 type: integer type: object results: items: type: object type: array type: object application/jsonl: schema: $ref: '#/components/schemas/StreamingResponse' description: JSON for Paginated, JSONL for Streaming '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: The request is not valid '401': content: application/json: schema: $ref: '#/components/schemas/Error' description: Unauthorized 5XX: content: application/json: schema: $ref: '#/components/schemas/Error' description: An error occurred summary: Win/Loss tags: - Datasets security: - Auth0: - offline_access servers: - description: Live Server url: https://api.mediamath.com/reporting/v2 tags: - name: Common - name: Datasets