openapi: 3.2.0 info: title: SpringServe UI API (V0) Demand Partners API version: 0.1.0 description: "> **_NOTE:_** This document covers the v0 API (`/api/v0`). You can find additional documentation on the v0 API (`/api/v0`) on the \n[Magnite Help Center](https://help.magnite.com/), which is broken into sections for endpoints relevant to \n[SpringServe](https://help.magnite.com/help/api-documentation) and [Clearline](https://help.magnite.com/help/api-documentation-06dd4d3). \nYou can also find V1 swagger documentation by selecting ‘SpringServe API V1’ from the dropdown at the top right corner \nof this page. Please note we are in the process of creating V1 endpoints for all existing V0 endpoints, but while that work \nis in progress not all endpoints will be supported on V1. We advise reviewing both swagger pages to determine what \nis supported in each version.\n\n# Authentication\nWhen using this API documentation server, by default it will authenticate API calls using cookie-based authentication agains the selected server. If you are properly logged into the SpringServe server and your session is still active, then the API calls should automatically authenticate. \n\nOutside of this API documentation server you should use either Token Based or Bearer authentication. You may also these authentication methods on this server as well,\n which will take precedence over any cookie/session based authentication.\n### Token Based Authentication\nUse the [POST /api/v0/auth](#/Auth/auth_post) endpoint to generate an API token that is then passed in the `Authorization: ` header\n\n### Bearer Authentication\nUse the [POST /api/v0/auth](#/Auth/auth_post) endpoint to authenticate and get a bearer token that is then passed in the `Authorization: Bearer ` header\n\n# Active Account Context\nA given request always runs in the context of currently active account for the authenticated user making\nthe request. The active account can be determined via the [GET /api/v0/accounts/current](#/Accounts/accounts_current_get)\nendpoint and updated via [POST /api/v0/accounts/{id}/set_current](#/Accounts/accounts_id_set_current_post).\nThe active account can also be overridden for an authenticated request by passing the `x-auth-context` header.\n\n# V0 List Resource Functionality\nV0 list endpoints support pagination via the `page` (first page is page 1) and `per` (how many results\nper page) query parameters. Some endpoints also support filtering by `ids[]` (repeated query param, e.g. ids[]=1&ids[]=2).\n" servers: - url: https://console.springserve.com/api/v0 description: SpringServe console. Added by API Evangelist from the published documentation (springserve.atlassian.net/wiki/spaces/SSD/pages/1573617663/API+-+Getting+Started, "Base Url https://console.springserve.com/"); the document Magnite serves declares no servers[] block because the Swagger UI infers the host from window.location. - url: https://console.clearline.magnite.com/api/v0 description: ClearLine console. The identical contract is served from ClearLine's own host; base URL published at springserve.atlassian.net/wiki/spaces/CLD/pages/3649929217/Clearline+API+SDK. security: - api_key: [] - bearer_token: [] tags: - name: Demand Partners paths: /api/v0/demand_partners: get: summary: Index description: List all demand partners. Supports pagination via page, per, and ids params. parameters: - $ref: ref/params.yaml#/components/parameters/pageParam - $ref: ref/params.yaml#/components/parameters/perParam - $ref: ref/params.yaml#/components/parameters/idsParam responses: '200': description: List of demand partners content: application/json: schema: $ref: ref/schemas.yaml#/components/schemas/ListResponse tags: - Demand Partners operationId: demand_partners_get post: summary: Create description: Creating a Demand Partner requestBody: content: application/json: schema: type: object examples: simple: $ref: '#/components/examples/demand_partner_create_simple' full: $ref: '#/components/examples/demand_partner_create_full' required: true responses: '201': description: Created demand partner content: application/json: schema: type: object example: account_id: 1 buy_flagged_supply: true default_tier: 1 direct_connect: false id: 1764 name: API Docs partner tags: - Demand Partners operationId: demand_partners_post /api/v0/demand_partners/{id}: parameters: - name: id in: path required: true schema: type: string get: summary: Show description: Get a Demand Partner responses: '200': description: Demand partner details content: application/json: schema: type: object example: account_id: 1 buy_flagged_supply: true default_tier: 1 direct_connect: false id: 1764 name: API Docs partner tags: - Demand Partners operationId: demand_partners_id_get put: summary: Update description: Edit a Demand Partner requestBody: content: application/json: schema: type: object examples: simple: $ref: '#/components/examples/demand_partner_update_simple' full: $ref: '#/components/examples/demand_partner_update_full' responses: '200': description: Updated demand partner content: application/json: schema: type: object example: account_id: 1 buy_flagged_supply: true default_tier: 1 direct_connect: false id: 1764 name: I want to change the name tags: - Demand Partners operationId: demand_partners_id_put delete: summary: Destroy description: Delete a demand partner responses: '204': description: No content tags: - Demand Partners operationId: demand_partners_id_delete components: examples: demand_partner_update_full: summary: Full value: name: Demand Partner Name code: dp_code secondary_code: dp_secondary_code default_tier: 1 creative_landing_page_url: https://ad.example.com/landing third_party_fee: 1.11 third_party_fee_currency: USD third_party_fee_metric: 0 third_party_fee_net_revenue: false nielsen_dar_active: false nielsen_traf_cid: '1' nielsen_custom_param_value: '1' audited_creative_statuses: [] targeting_spend_profile: budget_timezone: America/New_York budgets: - id: 1 budget_period: daily budget_metric: impressions budget_value: 1 budget_pacing: smooth targeting_time_profile: start_date: '2026-01-01' end_date: '2026-12-31' flight_dates_timezone: America/New_York day_parting_users_timezone: false frequency_caps: - id: 1 frequency_cap_period: day frequency_cap_period_amount: 1 frequency_cap_metric: impressions frequency_cap_value: 1 frequency_cap_type: springserve targeting_geo_profile: country_source: list country_white_list: true country_codes: - US country_list_ids: - 1 targeting_page_attribute_profile: domain_white_list: true domain_list_ids: - 1 app_name_white_list: true app_name_list_ids: - 1 app_bundle_white_list: true app_bundle_list_ids: - 1 ip_white_list: true ip_list_ids: - 1 daa_ad_choices: false euro_daa_ad_choices: false segment_targeting_enabled: false competitive_exclusions_enabled: false competitive_exclusion_iab_source: list competitive_exclusion_iab_category_list_ids: - 1 advertiser_domain_white_list: true advertiser_domain_list_ids: - 1 blocking_unknown_advertiser_domains: false tag_pixels: - id: 1 pixel_type: AdImpression pixel_url: https://pixel.example.com/imp pixel_format: image non_billable_fees: - id: 1 cost_basis: impressions value: '1.11' currency: USD account_manager_ids: - 1 note: Demand Partner note demand_partner_create_full: summary: Full value: name: Demand Partner Name code: dp_code secondary_code: dp_secondary_code default_tier: 1 creative_landing_page_url: https://ad.example.com/landing third_party_fee: 1.11 third_party_fee_currency: USD third_party_fee_metric: 0 third_party_fee_net_revenue: false nielsen_dar_active: false nielsen_traf_cid: '1' nielsen_custom_param_value: '1' audited_creative_statuses: [] targeting_spend_profile: budget_timezone: America/New_York budgets: - budget_period: daily budget_metric: impressions budget_value: 1 budget_pacing: smooth targeting_time_profile: start_date: '2026-01-01' end_date: '2026-12-31' flight_dates_timezone: America/New_York day_parting_users_timezone: false frequency_caps: - frequency_cap_period: day frequency_cap_period_amount: 1 frequency_cap_metric: impressions frequency_cap_value: 1 frequency_cap_type: springserve targeting_geo_profile: country_source: list country_white_list: true country_codes: - US country_list_ids: - 1 targeting_page_attribute_profile: domain_white_list: true domain_list_ids: - 1 app_name_white_list: true app_name_list_ids: - 1 app_bundle_white_list: true app_bundle_list_ids: - 1 ip_white_list: true ip_list_ids: - 1 daa_ad_choices: false euro_daa_ad_choices: false segment_targeting_enabled: false competitive_exclusions_enabled: false competitive_exclusion_iab_source: list competitive_exclusion_iab_category_list_ids: - 1 advertiser_domain_white_list: true advertiser_domain_list_ids: - 1 blocking_unknown_advertiser_domains: false tag_pixels: - pixel_type: AdImpression pixel_url: https://pixel.example.com/imp pixel_format: image non_billable_fees: - cost_basis: impressions value: '1.11' currency: USD account_manager_ids: - 1 note: Demand Partner note demand_partner_update_simple: summary: Simple value: name: Demand Partner Name demand_partner_create_simple: summary: Simple value: name: Demand Partner Name securitySchemes: api_key: type: apiKey in: header name: Authorization description: SpringServe authorization token based authentication. bearer_token: type: http scheme: bearer bearerFormat: JWT description: SpringServe authorization bearer token based authentication. This key is included in the response from the /api/v0/auth and /api/v1/auth endpoints. This key will be automatically set if you run the example for /api/v0/auth or /api/v1/auth x-servers-added-by: https://apievangelist.com — not present in the upstream document; see openapi/_original/ for the verbatim spec.