Magnite Demand Tags API

The Demand Tags API from Magnite — 17 operation(s) for demand tags.

Operations 26

GET /api/v0/demand_tags Index #
POST /api/v0/demand_tags Create #
GET /api/v0/demand_tags/{id} Show #
PUT /api/v0/demand_tags/{id} Update #
DELETE /api/v0/demand_tags/{id} Destroy #
GET /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys Index #
POST /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys Create #
GET /api/v0/demand_tags/{id}/duplicate Duplicate #
GET /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys/{id} Show #
PUT /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys/{id} Update #
DELETE /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys/{id} Destroy #
GET /api/v1/demand_tags Index #
POST /api/v1/demand_tags Create #
GET /api/v1/demand_tags/{id} Show #
PATCH /api/v1/demand_tags/{id} Update #
DELETE /api/v1/demand_tags/{id} Delete #
POST /api/v1/demand_tags/bulk_update Update Multiple Demand Tags #
GET /api/v1/demand_tags/download Download CSV #
POST /api/v1/demand_tags/macro_suggester Suggest VAST endpoint macros #
GET /api/v1/demand_tags/new Get defaults for a new Demand Tag #
GET /api/v1/demand_tags/permissions Permissions Collection #
GET /api/v1/demand_tags/{id}/creatives_summary Creatives Summary #
GET /api/v1/demand_tags/{id}/duplicate Duplicate Demand Tag #
GET /api/v1/demand_tags/{id}/permissions Permissions Member #
POST /api/v1/demand_tags/bulk/update Update Multiple Demand Tags #
GET /api/v1/demand_tags/new_from_forecast/{id} New From Demand Forecast #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/magnite-demand-tags-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

magnite-demand-tags-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Magnite Demand Tags API
  version: '1.0'
  description: 'Operations tagged Demand Tags across 2 of this provider''s published API definitions: magnite-springserve-v0-openapi.yml, magnite-springserve-v1-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://console.springserve.com
  description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
- url: https://api.springserve.com
  description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
security:
- api_key: []
- bearer_token: []
tags:
- name: Demand Tags
paths:
  /api/v0/demand_tags:
    get:
      summary: Index
      description: Get demand tags based on multiple conditions
      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 tags
          content:
            application/json:
              schema:
                $ref: ref/schemas.yaml#/components/schemas/ListResponse
      tags:
      - Demand Tags
      operationId: demand_tags_get
    post:
      summary: Create
      description: Creating a Demand Tag
      requestBody:
        content:
          application/json:
            schema:
              type: object
            examples:
              tag_simple:
                $ref: '#/components/examples/demand_tag_tag_create_simple'
              tag_full:
                $ref: '#/components/examples/demand_tag_tag_create_full'
              bidder_simple:
                $ref: '#/components/examples/demand_tag_bidder_create_simple'
              bidder_full:
                $ref: '#/components/examples/demand_tag_bidder_create_full'
              line_item_simple:
                $ref: '#/components/examples/demand_tag_line_item_create_simple'
              line_item_full:
                $ref: '#/components/examples/demand_tag_line_item_create_full'
              house_ad_simple:
                $ref: '#/components/examples/demand_tag_house_ad_create_simple'
              house_ad_full:
                $ref: '#/components/examples/demand_tag_house_ad_create_full'
              dsp_sub_line_item_simple:
                $ref: '#/components/examples/demand_tag_dsp_sub_line_item_create_simple'
              dsp_sub_line_item_full:
                $ref: '#/components/examples/demand_tag_dsp_sub_line_item_create_full'
              marketplace_deal_simple:
                $ref: '#/components/examples/demand_tag_marketplace_deal_create_simple'
              marketplace_deal_full:
                $ref: '#/components/examples/demand_tag_marketplace_deal_create_full'
        required: true
      responses:
        '201':
          description: Created demand tag
          content:
            application/json:
              schema:
                type: object
              example:
                account_id: 1
                active: true
                id: 30424
                name: TEST API DOCS
                rate: '0.01'
                demand_partner_id: 1764
                vast_endpoint_url: https://staging-tv.springserve.com/vast
      tags:
      - Demand Tags
      operationId: demand_tags_post
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v0/demand_tags/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    get:
      summary: Show
      description: Get a demand tag by id
      responses:
        '200':
          description: Demand tag details
          content:
            application/json:
              schema:
                type: object
              example:
                account_id: 1
                active: true
                id: 30424
                name: TEST API DOCS
                rate: '0.01'
                demand_partner_id: 1764
                vast_endpoint_url: https://staging-tv.springserve.com/vast
      tags:
      - Demand Tags
      operationId: demand_tags_id_get
    put:
      summary: Update
      description: Edit a Demand Tag (e.g. name, or budgets). See Clearline Demand Tag Budgets API docs for budget fields.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                advanced_floor_rules:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: integer
                      dimension:
                        type: string
                        enum:
                        - adomain
                        - duration
                        - country
                        - iab_tier_1
                        - iab_tier_2
                      values:
                        type: array
                        items:
                          type: string
                      floor_price:
                        type: number
            examples:
              simple:
                $ref: '#/components/examples/demand_tag_update_simple'
              full:
                $ref: '#/components/examples/demand_tag_update_full'
      responses:
        '200':
          description: Updated demand tag
          content:
            application/json:
              schema:
                type: object
              example:
                account_id: 1
                active: true
                demand_partner_id: 1764
                id: 30424
                name: I want to change the name
                rate: '0.01'
                vast_endpoint_url: https://staging-tv.springserve.com/vast
      tags:
      - Demand Tags
      operationId: demand_tags_id_put
    delete:
      summary: Destroy
      description: Delete a demand tag
      responses:
        '204':
          description: No content
      tags:
      - Demand Tags
      operationId: demand_tags_id_delete
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys:
    get:
      summary: Index
      description: List demand tag keys for a demand tag
      parameters:
      - name: demand_tag_id
        in: path
        required: true
        schema:
          type: string
      - $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 tag keys
          content:
            application/json:
              schema:
                $ref: ref/schemas.yaml#/components/schemas/ListResponse
      tags:
      - Demand Tags
      operationId: demand_tags_demand_tag_id_demand_tag_keys_get
    post:
      summary: Create
      parameters:
      - name: demand_tag_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
            examples:
              demand_tag_key_create_simple:
                $ref: '#/components/examples/demand_tag_key_create_simple'
              demand_tag_key_create_full:
                $ref: '#/components/examples/demand_tag_key_create_full'
        required: true
      responses:
        '201':
          description: Created demand tag key
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_demand_tag_id_demand_tag_keys_post
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v0/demand_tags/{id}/duplicate:
    get:
      summary: Duplicate
      description: Duplicate a Demand Tag
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Duplicated demand tag
          content:
            application/json:
              schema:
                type: object
              example:
                account_id: 1
                active: true
                demand_partner_id: 1764
                id: 72302
                name: I want to change the name (copy)
                rate: '0.01'
                vast_endpoint_url: https://staging-tv.springserve.com/vast
      tags:
      - Demand Tags
      operationId: demand_tags_id_duplicate_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v0/demand_tags/{demand_tag_id}/demand_tag_keys/{id}:
    get:
      summary: Show
      parameters:
      - name: demand_tag_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Demand tag key details
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_demand_tag_id_demand_tag_keys_id_get
    put:
      summary: Update
      parameters:
      - name: demand_tag_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
            examples:
              demand_tag_key_update_simple:
                $ref: '#/components/examples/demand_tag_key_update_simple'
              demand_tag_key_update_full:
                $ref: '#/components/examples/demand_tag_key_update_full'
      responses:
        '200':
          description: Updated demand tag key
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_demand_tag_id_demand_tag_keys_id_put
    delete:
      summary: Destroy
      parameters:
      - name: demand_tag_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No content
      tags:
      - Demand Tags
      operationId: demand_tags_demand_tag_id_demand_tag_keys_id_delete
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags:
    get:
      summary: Index
      description: List all Demand Tags
      parameters:
      - $ref: ref/params.yaml#/components/parameters/pageParam
      - $ref: ref/params.yaml#/components/parameters/perParam
      - $ref: ref/params.yaml#/components/parameters/sortParam
      - $ref: ref/params.yaml#/components/parameters/searchParam
      - $ref: ref/params.yaml#/components/parameters/filterParams
      - $ref: ref/params.yaml#/components/parameters/includeParam
      - $ref: ref/params.yaml#/components/parameters/idsParam
      - $ref: '#/components/parameters/additionalDataParam'
      - name: date_range
        in: query
        schema:
          $ref: ./ref/quickstats.yaml#/components/schemas/dateRange
      - name: currency
        in: query
        schema:
          $ref: ./ref/concerns/currency.yaml#/components/schemas/CurrencyList
      - name: demand_label_id
        in: query
        description: 'Narrow results to demand tags linked to this demand label through demand_labelers

          (parity with the legacy demand tags index label filter). Invalid or zero values yield

          an empty result set.

          '
        schema:
          type: integer
      - name: demand_tag_status
        in: query
        description: 'Filter by demand tag status (legacy index parity). Values: active, inactive, new,

          reactivated. Unknown values return an empty result set. DSP sub-accounts only

          support active and inactive; other values return 400.

          '
        schema:
          type: string
          enum:
          - active
          - inactive
          - new
          - reactivated
      - name: demand_type
        in: query
        description: 'Filter by demand type slug (legacy demand class filter). Values include managed, dc, hb,

          creative, house_ad, line_item, programmatic_guaranteed, direct_io, direct_io_line_item.

          Unknown values return an empty result set.

          '
        schema:
          type: string
      - name: supply_environment
        in: query
        description: 'Filter by supply environment on the demand tag. Use `any` for legacy "Any"

          (direct-connect environment or unset). Named `supply_environment` to avoid clashing

          with the default column equality filter on `environment`.

          '
        schema:
          type: string
      - name: ad_server
        in: query
        description: 'Filter by ad server bucket (legacy index parity): springserve, other, a header-bidding

          platform key, or a VAST URL match string from configured ad servers.

          '
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemandTagIndexResponse'
      tags:
      - Demand Tags
      operationId: demand_tags_get
    post:
      summary: Create
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/DemandTagCreateRequest'
            examples:
              tag_simple:
                $ref: '#/components/examples/demand_tag_tag_create_simple_2'
              tag_full:
                $ref: '#/components/examples/demand_tag_tag_create_full_2'
              bidder_simple:
                $ref: '#/components/examples/demand_tag_bidder_create_simple_2'
              bidder_full:
                $ref: '#/components/examples/demand_tag_bidder_create_full_2'
              line_item_simple:
                $ref: '#/components/examples/demand_tag_line_item_create_simple_2'
              line_item_full:
                $ref: '#/components/examples/demand_tag_line_item_create_full_2'
              house_ad_simple:
                $ref: '#/components/examples/demand_tag_house_ad_create_simple_2'
              house_ad_full:
                $ref: '#/components/examples/demand_tag_house_ad_create_full_2'
              dsp_sub_line_item_simple:
                $ref: '#/components/examples/demand_tag_dsp_sub_line_item_create_simple_2'
              dsp_sub_line_item_full:
                $ref: '#/components/examples/demand_tag_dsp_sub_line_item_create_full_2'
              marketplace_deal_simple:
                $ref: '#/components/examples/demand_tag_marketplace_deal_create_simple_2'
              marketplace_deal_full:
                $ref: '#/components/examples/demand_tag_marketplace_deal_create_full_2'
              direct_io_line_item_simple:
                $ref: '#/components/examples/demand_tag_direct_io_line_item_create_simple'
              direct_io_line_item_full:
                $ref: '#/components/examples/demand_tag_direct_io_line_item_create_full'
        required: true
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemandTagResponse'
        '422':
          $ref: ref/errors.yaml#/components/responses/validationError
      tags:
      - Demand Tags
      operationId: demand_tags_post
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/{id}:
    get:
      summary: Show
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - $ref: ref/params.yaml#/components/parameters/includeParam
      - $ref: '#/components/parameters/additionalDataParam'
      - name: date_range
        in: query
        schema:
          $ref: ./ref/quickstats.yaml#/components/schemas/dateRange
      - name: currency
        in: query
        schema:
          $ref: ./ref/concerns/currency.yaml#/components/schemas/CurrencyList
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemandTagResponse'
        '404':
          $ref: ref/errors.yaml#/components/responses/notFoundError
      tags:
      - Demand Tags
      operationId: demand_tags_id_get
    patch:
      summary: Update
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                advanced_floor_rules:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: integer
                      dimension:
                        type: string
                        enum:
                        - adomain
                        - duration
                        - country
                        - iab_tier_1
                        - iab_tier_2
                      values:
                        type: array
                        items:
                          type: string
                      floor_price:
                        type: number
            examples:
              simple:
                $ref: '#/components/examples/demand_tag_update_simple_2'
              full:
                $ref: '#/components/examples/demand_tag_update_full_2'
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_id_patch
    delete:
      summary: Delete
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            example:
              name: V1 API Updated name
            schema:
              type: object
        required: true
      responses:
        '204':
          description: No content
      tags:
      - Demand Tags
      operationId: demand_tags_id_delete
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/bulk_update:
    post:
      summary: Update Multiple Demand Tags
      description: Update multiple demand tags with the same attributes in a single request. Returns different status codes based on success/failure ratio.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                allOf:
                - type: object
                  required:
                  - object_ids
            examples:
              single:
                $ref: '#/components/examples/demand_tag_bulk_update_same_single'
              multiple:
                $ref: '#/components/examples/demand_tag_bulk_update_same_multiple'
      responses:
        '200':
          description: Bulk update completed
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Status message describing the bulk update results
                examples:
                - message: 'Successfully updated 2 Demand Tags: 2, 3'
        '400':
          description: Bad request - invalid request body
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  error:
                    type: string
                examples:
                - status: 400
                  error: Bad Request
      tags:
      - Demand Tags
      operationId: demand_tags_bulk_update_same_attributes_post
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/download:
    get:
      summary: Download CSV
      description: Download a CSV file with demand tag information for the specified demand tag IDs
      parameters:
      - name: ids
        in: query
        description: Comma-separated list of demand tag IDs, or array of demand tag IDs
        required: true
        schema:
          oneOf:
          - type: string
          - type: array
            items:
              type: integer
      - name: filename
        in: query
        description: Optional custom filename for the CSV download
        required: false
        schema:
          type: string
      responses:
        '200':
          description: CSV file download
          content:
            text/csv:
              schema:
                type: string
                format: binary
            application/json:
              schema:
                type: object
        '400':
          description: Bad Request - No demand tag IDs provided
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_download_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/macro_suggester:
    post:
      summary: Suggest VAST endpoint macros
      description: Returns a macro-filled VAST endpoint URL and resolved ad_server_id for demand tag endpoint settings. Does not create or update a demand tag.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MacroSuggesterRequest'
            examples:
              simple:
                $ref: '#/components/examples/demand_tag_macro_suggester_simple'
              full:
                $ref: '#/components/examples/demand_tag_macro_suggester_full'
      responses:
        '200':
          description: Suggested VAST URL and ad server id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MacroSuggesterResponse'
      tags:
      - Demand Tags
      operationId: demand_tags_macro_suggester_post
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/new:
    get:
      summary: Get defaults for a new Demand Tag
      description: Returns the default values for a new Demand Tag.
      parameters:
      - name: demand_partner_id
        in: query
        required: false
        schema:
          type: integer
          format: int64
        description: Optional param to add demand_partner_id on the new Demand Tag defaults.
      - name: campaign_id
        in: query
        required: false
        schema:
          type: integer
          format: int64
        description: Optional param to add campaign_id on the new Default Tag defaults. Also populates demand_partner_id from the campaign if demand_partner_id is omitted.
      - $ref: ref/params.yaml#/components/parameters/includeParam
      responses:
        '200':
          description: Demand Tag defaults
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemandTagResponse'
      tags:
      - Demand Tags
      operationId: demand_tags_new_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/permissions:
    get:
      summary: Permissions Collection
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_permissions_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/{id}/creatives_summary:
    get:
      summary: Creatives Summary
      description: "Get reporting data for a campaign with comparison metrics. Returns raw numeric values with percentage changes \nfor all metrics. When forecast_date_range is provided, also returns forecast_summary\nand combined_summary.\n"
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Demand Tag ID
      - $ref: ref/params.yaml#/components/parameters/quickstatsDateRangeParam
      - $ref: ref/params.yaml#/components/parameters/quickstatsForecastDateRangeParam
      - $ref: ref/params.yaml#/components/parameters/quickstatsCurrencyParam
      responses:
        '200':
          $ref: ref/quickstats.yaml#/components/responses/QuickstatsSummaryResponse
      tags:
      - Demand Tags
      operationId: demand_tags_id_creatives_summary_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/{id}/duplicate:
    get:
      summary: Duplicate Demand Tag
      description: Returns the default values for a new Demand Tag, copied from an existing Demand Tag
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - $ref: ref/params.yaml#/components/parameters/includeParam
      responses:
        '200':
          description: Demand Tag defaults, copied from an existing Demand Tag
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemandTagResponse'
        '404':
          $ref: ref/errors.yaml#/components/responses/notFoundError
      tags:
      - Demand Tags
      operationId: demand_tags_id_duplicate_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/{id}/permissions:
    get:
      summary: Permissions Member
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Demand Tags
      operationId: demand_tags_id_permissions_get
    servers:
    - url: https://console.springserve.com
      description: Production API endpoint named by the SpringServe developer documentation (API - Getting Started).
    - url: https://api.springserve.com
      description: Same application; also serves the Swagger UI at /api-docs. Verified 2026-08-13.
  /api/v1/demand_tags/bulk/update:
    post:
      summary: Update Multiple Demand Tags
      description: Update multiple demand tags independently in a single request. Returns different status codes based on success/failure ratio.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                allOf:
                - type: object
                  required:
                  - id
            examples:
              single:
                $ref: '#/components/examples/demand_tag_bulk_update_many_single'
              multiple:
                $ref: '#/components/examples/demand_tag_bulk_update_many_multiple'
      responses:
        '204':
          description: All updates successful
        '200':
          description: Partial success - some objects updated successfully, others failed
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: object
                    additionalProperties:
                      type: array
                      items:
                        type: string
                examples:
                - errors:
                    '1':
                    - Name cannot be blank
                    other:
                    - Object at index 2 is missing an ID
        '400':
          description: Bad request - no objects provided
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                examples:
                - error: No objects provided
        '422':
          description: All updates failed - no objects were updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: object
                    additionalProperties:
                      type: array
                      items:
                        type: string
                examples:
 

# --- truncated at 32 KB (84 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/magnite/refs/heads/main/openapi/magnite-demand-tags-api-openapi.yml