AdServer / RTB Platform API · /v1

    AdSovereign API Documentation

    Programmatic APIs for managing private RTB infrastructure, inventory, demand partners, placements, deals, and reporting. Automate platform operations across publishers, sites, apps, placements, DSPs, RTB sources, Prebid, Header Bidding, private deals, and analytics.

    The AdSovereign API is an AdServer / RTB platform API (base path /v1, API-key authenticated) that gives enterprise teams programmatic control over publishers, sites, apps, placements, RTB, Prebid, Header Bidding, DSP connections, private deals, and reporting inside a private programmatic environment.

    Key Facts

    • •Base URL: https://api.adsovereign.com/v1 (host varies by deployment)
    • •Auth: API key sent in the request header — token: YOUR_API_KEY
    • •Domains: Publisher, Site, App, Placement, RTB, HB, Prebid, DSP, Deal, Report, Reference Data
    • •Reporting: metrics, groupBy, filters, pagination, and CSV export
    • •Built for automation — not just manual platform administration

    In Simple Terms

    Anything you can do by hand in the platform — onboarding a publisher, creating a placement, connecting a DSP, launching a private deal, pulling a report — you can also do through this API, so it can be wired into your own internal systems, pipelines, and BI tools.

    What This API Does

    The AdSovereign API provides programmatic access to the operational layer of the platform. It lets teams create, update, disable, enable, retrieve, and report on the main entities used in a private RTB environment.

    • Manage publishers, sites, and apps
    • Create and configure placements
    • Manage RTB, Prebid, and Header Bidding sources
    • Configure DSP connections and demand rules
    • Create private deals
    • Retrieve reporting metrics
    • Access reference data for targeting and configuration

    Why it matters: This API helps enterprise teams reduce manual work, automate integrations, standardize operations, and connect private RTB workflows to internal systems.

    Authentication

    The API uses API key authentication. Each request must include a valid token in the request header named token.

    curl — authenticated request
    curl -X GET "https://api.adsovereign.com/v1/publishers" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Security note: Do not expose API keys in client-side code. Store keys in secure server-side environments, secrets managers, or approved deployment pipelines.

    Base URL

    Base URL
    https://api.adsovereign.com/v1

    The final host may vary by customer deployment, especially for on-premise, hybrid, or dedicated private infrastructure environments.

    Core API Domains

    Each domain maps to a real part of the platform. Every domain below includes a plain-English purpose, its endpoints, a request/response sample, a user story, and why it matters.

    Domain 1

    Publisher Management

    Create and manage publisher accounts that own sites, apps, placements, RTB sources, Prebid integrations, and Header Bidding sources.

    GET/POST /publishersGET/PUT/DELETE /publishers/{id}PUT /publishers/{id}/enablePUT /publishers/{id}/disable
    Request / response sample
    # Create a publisher
    curl -X POST "https://api.adsovereign.com/v1/publishers" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "name": "Example Publisher", "email": "publisher@example.com" }'
    
    # 201 Created
    {
      "id": 1042,
      "name": "Example Publisher",
      "email": "publisher@example.com",
      "uid": "pub_8f2a...",
      "disabled": false
    }
    
    # Note: PublisherModel accepts "name" and "email" on create.

    User story

    As an AdOps engineer onboarding a new supply partner, I create the publisher account via the API so the rest of the inventory hierarchy can be provisioned automatically.

    Why it's important

    Publishers are the root of the supply hierarchy. Automating account creation removes manual setup and standardizes how every supply partner is onboarded.

    Domain 2

    Site Management

    Manage web properties connected to publisher accounts.

    GET /sitesGET/PUT/DELETE /sites/{id}POST /publishers/{publisherId}/sites
    Request / response sample
    # Create a site under a publisher (SiteCreateModel)
    curl -X POST "https://api.adsovereign.com/v1/publishers/1042/sites" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Example News",
        "url": "https://news.example.com",
        "categories": [1]
      }'
    
    # 201 Created
    # categories is an array of integer category IDs (see GET /categories).

    User story

    As an integration engineer, I register every website a publisher owns so display, video, Prebid, and RTB inventory can be attached to the right property.

    Why it's important

    Sites are the container for web inventory. Clean site records keep targeting, reporting, and placement configuration accurate.

    Domain 3

    App Management

    Manage mobile app inventory and app-level metadata.

    GET /appsGET/PUT/DELETE /apps/{id}POST /publishers/{publisherId}/apps
    Request / response sample
    # Create a mobile app under a publisher
    curl -X POST "https://api.adsovereign.com/v1/publishers/1042/apps" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Example Game",
        "appName": "Example Game",
        "bundle": "com.example.game",
        "appDomain": "example.com",
        "appVer": "1.0.0",
        "storeUrl": "https://play.google.com/store/apps/details?id=com.example.game",
        "categories": [1]
      }'
    
    # 201 Created
    # categories is an array of integer category IDs (see GET /categories).

    User story

    As a supply manager onboarding mobile inventory, I create app records with bundle IDs and store URLs so demand partners can target the app correctly.

    Why it's important

    App metadata (bundle, store URL, categories) is required for demand partners to value and target mobile inventory. Accurate records protect fill and CPM.

    Domain 4

    Placement Management

    Create and manage monetization placements across sites and apps.

    GET /sites/placementsGET /apps/placementsPOST /sites/{id}/placementsPOST /apps/{id}/placements
    Request / response sample
    # Create a placement for site 51
    curl -X POST "https://api.adsovereign.com/v1/sites/51/placements" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Homepage MPU",
        "width": 300, "height": 250,
        "cpm": 1.50, "currency": "USD",
        "markup": 1,
        "type": 1,
        "htmlType": 1,
        "devices": [1, 2],
        "passback": "",
        "settingsDsps": []
      }'
    
    # 201 Created
    # type (BannerType) and htmlType use enum values 1-4; currency is one of
    # RUB, EUR, USD, GBP; devices is an array of integer device IDs.

    User story

    As an AdOps specialist, I create a 300x250 placement on a site, set the floor CPM and currency, restrict it to desktop, and attach DSP settings in a single call.

    Why it's important

    Placements are where money is actually made. Programmatic placement creation lets teams configure dimensions, floors, devices, and DSP rules at scale.

    Domain 5

    RTB Management

    Manage RTB sources and private real-time bidding supply configurations.

    GET /rtbGET/PUT/DELETE /rtb/{id}POST /publishers/{publisherId}/rtb
    Request / response sample
    # Create an RTB source under a publisher
    curl -X POST "https://api.adsovereign.com/v1/publishers/1042/rtb" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "name": "Example RTB", "markup": 1 }'
    
    # 201 Created

    User story

    As a platform engineer, I create an RTB source for a publisher and connect it to private programmatic workflows so its inventory enters the auction.

    Why it's important

    RTB sources are how publisher supply joins real-time auctions. Programmatic configuration keeps endpoint provisioning consistent and auditable.

    Domain 6

    Header Bidding

    Manage Header Bidding inventory sources.

    GET /hbGET/PUT/DELETE /hb/{id}POST /publishers/{publisherId}/hb
    Request / response sample
    # Create a Header Bidding source under a publisher
    curl -X POST "https://api.adsovereign.com/v1/publishers/1042/hb" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "name": "Example HB" }'
    
    # 201 Created

    User story

    As an engineer rolling out HB across a publisher's portfolio, I create and configure HB sources via the API instead of hand-editing each property.

    Why it's important

    Header Bidding sources need consistent configuration to compete fairly in the auction. The API standardizes setup across many properties.

    Domain 7

    Prebid

    Manage Prebid configurations and sources.

    GET /prebidGET/PUT/DELETE /prebid/{id}POST /publishers/{publisherId}/prebid
    Request / response sample
    # Create a Prebid source under a publisher
    curl -X POST "https://api.adsovereign.com/v1/publishers/1042/prebid" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "name": "Example Prebid" }'
    
    # 201 Created

    User story

    As an AdOps engineer, I provision Prebid sources with the right placement, CPM, format, and device mapping so Prebid demand competes correctly.

    Why it's important

    Prebid configuration ties placement, format, and publisher mapping together. Automating it keeps monetization workflows reproducible.

    Domain 8

    DSP Management

    Create and manage DSP connections.

    GET/POST /dspsGET/PUT/DELETE /dsps/{id}PUT /dsps/{id}/enablePUT /dsps/{id}/disable
    Request / response sample
    # Create a DSP connection
    curl -X POST "https://api.adsovereign.com/v1/dsps" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Example DSP",
        "url": "https://bid.exampledsp.com/rtb",
        "currency": "USD",
        "dmpId": "dmp-7",
        "qpsLimit": 5000,
        "gzipSupported": true,
        "trafficTypes": [1, 2],
        "rtb": [11], "hb": [], "prebid": [],
        "sitePlacements": [301, 302],
        "blockedAdvertisers": ["competitor.com"]
      }'
    
    # 201 Created
    # rtb, hb, prebid and *Placements are arrays of integer source/placement IDs;
    # dmpId is a string; currency is one of RUB, EUR, USD, GBP.

    User story

    As a demand manager connecting a new buyer, I create the DSP with its endpoint URL, currency, QPS limit, and traffic-type rules, then enable it once traffic validates.

    Why it's important

    DSP configuration controls which buyers see which traffic and at what QPS. Programmatic control prevents misconfiguration that wastes spend or overloads partners.

    Domain 9

    Deal Management

    Create and manage private marketplace deals connected to DSPs.

    GET /dealsGET/PUT/DELETE /deals/{id}POST /dsps/{id}/dealsPUT /deals/{id}/enablePUT /deals/{id}/disable
    Request / response sample
    # Create a private deal for DSP 88
    curl -X POST "https://api.adsovereign.com/v1/dsps/88/deals" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Q1 Premium PMP",
        "cpm": 6.50, "currency": "USD",
        "startDate": "2026-01-01T00:00:00+00:00",
        "endDate": "2026-03-31T23:59:59+00:00",
        "domains": ["news.example.com"],
        "sitePlacements": [301, 302],
        "appPlacements": []
      }'
    
    # 201 Created -> returns deal "uid" used as the deal ID in bid requests
    # startDate/endDate are RFC3339 date-times; currency is one of RUB, EUR, USD, GBP.

    User story

    As an AdOps lead setting up a PMP, I create a private deal with a fixed CPM, date range, and the exact placements it applies to, then enable it.

    Why it's important

    Private deals are how preferred and guaranteed buying happens. Programmatic deal creation makes PMP setup fast, accurate, and repeatable.

    Domain 10

    Reporting

    Retrieve performance reporting and export data.

    GET/POST /reportGET/POST /report/csv
    Request / response sample
    # Query a report (see Reporting section for the full body)
    curl -X POST "https://api.adsovereign.com/v1/report" \
      -H "token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "from": "2026-01-01", "to": "2026-01-31",
            "metrics": ["requests","imps","revenue"], "groupBy": ["date"] }'

    User story

    As a revenue analyst, I POST a date range with metrics and groupBy to get daily DSP performance, then pull the same query as CSV for the finance team.

    Why it's important

    Reporting connects operations to revenue. JSON for dashboards and CSV for finance means one source of truth feeds BI, billing, and reconciliation.

    Domain 11

    Reference Data

    Provide reference values used for targeting, configuration, reporting filters, and UI dropdowns.

    /status/devices/countries/regions/cities/stores/languages/os/makers/carriers/categories/bannertypes/placementtypes/htmltypes/videotypes/videostartdelays
    Request / response sample
    # Fetch the device reference list
    curl -X GET "https://api.adsovereign.com/v1/devices" \
      -H "token: YOUR_API_KEY"
    
    # 200 OK
    { "data": [ { "id": 1, "name": "Mobile" }, { "id": 2, "name": "Desktop" },
                { "id": 3, "name": "Connected TV" } ] }

    User story

    As a frontend engineer building an internal console, I load countries, devices, and categories from the reference endpoints to populate targeting dropdowns.

    Why it's important

    Reference data keeps every integration speaking the same IDs for geography, devices, formats, and categories — preventing mismatched targeting and broken filters.

    Common Workflows

    The most common end-to-end sequences teams automate with the API.

    Workflow 1: Onboard a Publisher

    1. 1Create publisher
    2. 2Create site or app under publisher
    3. 3Create placement
    4. 4Configure RTB, Prebid, or HB source
    5. 5Connect demand through DSP configuration
    6. 6Validate reporting

    Workflow 2: Create a Site Placement

    1. 1Create or select publisher
    2. 2Create site
    3. 3Create placement with size, CPM, currency, markup, device targeting, and format
    4. 4Configure passback and DSP settings
    5. 5Enable placement
    6. 6Monitor performance through the reporting API

    Workflow 3: Connect a DSP

    1. 1Create DSP with endpoint URL and currency
    2. 2Set DMP ID
    3. 3Configure QPS limit
    4. 4Enable gzip if supported
    5. 5Configure RTB, HB, or Prebid source lists
    6. 6Configure blocked advertisers if needed
    7. 7Enable DSP and validate traffic

    Workflow 4: Create a Private Deal

    1. 1Select DSP
    2. 2Create deal with CPM and currency
    3. 3Define start and end dates
    4. 4Attach site or app placements
    5. 5Define domain rules if needed
    6. 6Enable deal
    7. 7Monitor deal performance

    Workflow 5: Generate a Performance Report

    1. 1Choose date range
    2. 2Select metrics
    3. 3Select groupBy fields
    4. 4Apply filters
    5. 5Request JSON or CSV output
    6. 6Use results in BI, dashboarding, or billing workflows

    Endpoint Reference

    Endpoints grouped by domain. Method, path, and purpose for each. Hit Try it on any endpoint to build a request and copy a ready-to-run snippet in curl, JavaScript, or Python. The full request and response schemas are in the downloadable OpenAPI spec.

    Showing 111 of 111 endpoints

    Request configuration

    Set your base URL and API key once — every generated snippet below uses these values. Nothing is sent anywhere; snippets are built entirely in your browser.

    Publishers

    GET
    /publishers

    Get publishers

    POST
    /publishers

    Create publisher

    GET
    /publishers/{id}

    Get publisher by id

    PUT
    /publishers/{id}

    Update publisher

    DELETE
    /publishers/{id}

    Delete publisher with associated sites and placements

    PUT
    /publishers/{id}/disable

    Disable Publisher

    PUT
    /publishers/{id}/enable

    Enable Publisher

    POST
    /publishers/{publisherId}/apps

    Create app

    POST
    /publishers/{publisherId}/hb

    Create HB

    POST
    /publishers/{publisherId}/prebid

    Create Prebid

    POST
    /publishers/{publisherId}/rtb

    Create RTB

    POST
    /publishers/{publisherId}/sites

    Create site

    POST
    /publishers/short

    Get publishers

    POST
    /publishers/short/reverse

    Get publishers

    Sites & Apps

    GET
    /apps

    Get apps

    GET
    /apps/{id}

    Get app

    PUT
    /apps/{id}

    Update app

    DELETE
    /apps/{id}

    Delete app

    PUT
    /apps/{id}/disable

    Disable app

    PUT
    /apps/{id}/enable

    Enable app

    POST
    /apps/{id}/placements

    Create placement for app

    GET
    /apps/placements

    Get placements for app

    GET
    /apps/placements/{placementId}

    Get app placement

    PUT
    /apps/placements/{placementId}

    Update app placement

    DELETE
    /apps/placements/{placementId}

    Delete app placement

    PUT
    /apps/placements/{placementId}/disable

    Disable app placement

    PUT
    /apps/placements/{placementId}/enable

    Enable app placement

    POST
    /apps/placements/short

    Get placements short for app

    POST
    /apps/placements/short/reverse

    Get placements short reverse for app

    POST
    /apps/short

    Get apps (short)

    POST
    /apps/short/reverse

    Get apps (short reverse)

    GET
    /sites

    Get sites

    GET
    /sites/{id}

    Get site

    PUT
    /sites/{id}

    Update site

    DELETE
    /sites/{id}

    Delete site

    PUT
    /sites/{id}/disable

    Disable site

    PUT
    /sites/{id}/enable

    Enable site

    POST
    /sites/{id}/placements

    Create placement for site

    GET
    /sites/placements

    Get placements for site

    GET
    /sites/placements/{placementId}

    Get site placement

    PUT
    /sites/placements/{placementId}

    Update site placement

    DELETE
    /sites/placements/{placementId}

    Delete site placement

    PUT
    /sites/placements/{placementId}/disable

    Disable site placement

    PUT
    /sites/placements/{placementId}/enable

    Enable site placement

    POST
    /sites/placements/short

    Get placements short for site

    POST
    /sites/placements/short/reverse

    Get placements short reverse for site

    POST
    /sites/short

    Get sites (short)

    POST
    /sites/short/reverse

    Get sites (short reverse)

    Inventory Sources (RTB / HB / Prebid)

    GET
    /hb

    Get HB

    GET
    /hb/{id}

    Get HB

    PUT
    /hb/{id}

    Update HB

    DELETE
    /hb/{id}

    Delete HB

    PUT
    /hb/{id}/disable

    Disable HB

    PUT
    /hb/{id}/enable

    Enable HB

    POST
    /hb/short

    Get HB (short)

    POST
    /hb/short/reverse

    Get HB (short reverse)

    GET
    /prebid

    Get Prebid

    GET
    /prebid/{id}

    Get Prebid

    PUT
    /prebid/{id}

    Update Prebid

    DELETE
    /prebid/{id}

    Delete Prebid

    PUT
    /prebid/{id}/disable

    Disable Prebid

    PUT
    /prebid/{id}/enable

    Enable Prebid

    POST
    /prebid/short

    Get Prebid (short)

    POST
    /prebid/short/reverse

    Get Prebid (short reverse)

    GET
    /rtb

    Get RTB

    GET
    /rtb/{id}

    Get RTB

    PUT
    /rtb/{id}

    Update RTB

    DELETE
    /rtb/{id}

    Delete RTB

    PUT
    /rtb/{id}/disable

    Disable RTB

    PUT
    /rtb/{id}/enable

    Enable RTB

    POST
    /rtb/short

    Get RTB (short)

    POST
    /rtb/short/reverse

    Get RTB (short reverse)

    DSPs & Deals

    GET
    /deals

    Get deals

    GET
    /deals/{id}

    Get deal by id

    PUT
    /deals/{id}

    Update deal

    DELETE
    /deals/{id}

    Delete deal

    PUT
    /deals/{id}/disable

    Disable deal

    PUT
    /deals/{id}/enable

    Enable deal

    POST
    /deals/short

    Get deals

    GET
    /dsps

    Get dsps

    POST
    /dsps

    Create DSP

    GET
    /dsps/{id}

    Get DSP by id

    PUT
    /dsps/{id}

    Update DSP

    DELETE
    /dsps/{id}

    Delete DSP

    POST
    /dsps/{id}/deals

    Create new deal for DSP

    PUT
    /dsps/{id}/disable

    Disable DSP

    PUT
    /dsps/{id}/enable

    Enable DSP

    POST
    /dsps/short

    Get dsps

    Reporting

    GET
    /report

    Get report

    POST
    /report

    Post report

    GET
    /report/csv

    Get csv report

    POST
    /report/csv

    Post csv report

    Reference Data

    GET
    /bannertypes

    Get banner types

    GET
    /browsers

    Get browsers

    GET
    /carriers

    Get carriers

    GET
    /carriers/{id}

    Get carrier by id

    GET
    /categories

    Get categories

    GET
    /categories/{id}

    Get category by id

    GET
    /cities

    Get cities

    GET
    /countries

    Get campaign countries

    GET
    /devices

    Get devices

    GET
    /htmltypes

    Get html types

    GET
    /languages

    Get languages

    GET
    /makers

    Get makers

    GET
    /os

    List operating systems

    GET
    /placementtypes

    Get placement types

    GET
    /regions

    Get regions

    GET
    /status

    Get statuses

    GET
    /stores

    Get stores

    GET
    /videostartdelays

    Get video start delays

    GET
    /videotypes

    Get video types

    Reporting API

    The reporting API queries operational and financial performance data. It supports filters, metrics, grouping, sorting, pagination, and CSV export. The request below returns daily DSP performance with key delivery and financial metrics.

    POST /report — request body
    POST /report
    {
      "from": "2026-01-01",
      "to": "2026-01-31",
      "timezone": "America/New_York",
      "metrics": ["requests", "bids", "imps", "clicks",
                  "revenueUsd", "profitUsd", "fillRate"],
      "groupBy": ["date", "dspName"],
      "dspId": [1],
      "page": 1,
      "size": 100
    }

    Available metrics

    requests, bids, nobids, dspRequests, dspWinBids, dspTimeouts, dspErrors, imps, clicks, ctr, fillRate, winRate, revenue, payout, profit, eCPM, and VAST events.

    Export

    POST the same body to /report/csv to receive a CSV download for BI, dashboarding, billing, and finance workflows.

    Reference Data APIs

    Reference endpoints return the values used for targeting, configuration, reporting filters, and UI dropdowns. They keep every integration aligned on the same IDs.

    /status/devices/countries/regions/cities/stores/languages/os/makers/carriers/categories/bannertypes/placementtypes/htmltypes/videotypes/videostartdelays

    Error Handling

    200 OKSuccessful request.
    201 CreatedResource created.
    204 No ContentAction completed without a response body.
    400 Bad RequestInvalid request or validation error.
    404 Not FoundResource not found.
    500 Internal Server ErrorPlatform or server error.

    Validation rules depend on the model. Required fields and constraints are shown in each endpoint's schema in the OpenAPI spec.

    Security Notes

    • Store the API token securely — secrets manager or server-side environment only.
    • Rotate API keys regularly.
    • Use server-side calls only; never expose the token in browser code.
    • Log administrative API usage for auditability.
    • Use role-based access where available.
    • Separate staging and production credentials.
    • Restrict API access by network or environment where possible.

    Data Models

    The key entities you'll work with, in human-readable form. Full field types and constraints are in the OpenAPI spec.

    Publisher

    createdAtdeletedAtdisabledemailidnameuidupdatedAt

    Site

    categoriescreatedAtdeletedAtdisabledidnamepublisherDeletedAtpublisherDisabledpublisherIdpublisherNameuidupdatedAturl

    App

    appDomainappNameappVerbundlecategoriescreatedAtdeletedAtdisabledidnamepublisherDeletedAtpublisherDisabledpublisherIdpublisherNamestoreUrluidupdatedAturl

    Placement

    codecpmcreatedAtcurrencydeletedAtdevicesdisabledheighthtmlTypeidmarkupmaxVideoDurationminVideoDurationnameordMandatorypassbackpublisherDeletedAtpublisherDisabledpublisherIdpublisherNamesettingsDspssiteDeletedAtsiteDisabledsiteIdsiteNametypeuidupdatedAtwidth

    DSP

    appPlacementsblockedAdvertisersbuyeruidRequiredcreatedAtcurrencydeletedAtdisableddmpIdexcludeAppPlacementsexcludeHbexcludePrebidexcludeRtbexcludeSitePlacementsgzipSupportedhbidnameprebidqpsLimitrtbsitePlacementstrafficTypesupdatedAturl

    Deal

    appPlacementscpmcreatedAtcurrencydeletedAtdisableddomainsdspDeletedAtdspDisableddspIddspNameendDateexcludeAppPlacementsexcludeDomainsexcludeSitePlacementsidnamesitePlacementsstartDateuidupdatedAt

    Advertiser

    api_keycitycountrydmpIdemailfirst_nameidlast_namestatus

    Campaign

    advertiserIdbudgetendDateidnamestartDatestatus

    Line Item

    advertiserIdappBundlesauditoriesbrowserscampaignIdcarrierscategoriescitiescountriescpmdailyBudgetdevicesdomainsAndPagesendDatefrequencyCapfrequencyPeriodgeoAreasidipAddressesisAppBundlesExcludedisBrowsersExcludedisCarriersExcludedisCategoriesExcludedisDailyBudgetEvenisDomainsAndPagesExcludedisGeoAreasExcludedisGeoExcludedisIpAddressesExcludedisLanguagesExcludedisMakersExcludedisOsExcludedlanguagesmakersnameosplacementsregionsschedulesitesstartDatestatus

    Creative

    apibannerFilebannerTypeclickUrlcontentdisabledidlineItemIdnameprotocolsskipoffsettemplateTypethirdPartyUrlsvastTrackingEventsvideoFirstFilevideoSecondFilevideoStartDelays

    Audience

    advertiserIddescriptionidnameoperationsegments

    Report Criteria

    advertiserIdappIdappPlacementIdbrowserbundlecampaignIdcarriercountrycreativeIdcreativeTokencriddealIddealUiddevicedomaindspIddspNameexcludeFieldsfromgroupByhbIdlineItemIdmakermetricFiltersmetricsorderByospageparamIdprebidIdpublisherIdrtbIdsiteIdsitePlacementIdsizesortOrderstoreUrltimezonetotrafficType

    Download OpenAPI Spec

    Download the full OpenAPI (Swagger) JSON to import into Postman, generate client SDKs, or build your own tooling against the AdSovereign API.

    Frequently Asked Questions

    How do I authenticate with the AdSovereign API?

    Every request must include your API key in a request header named token (for example, token: YOUR_API_KEY). Keys are provisioned per deployment and must be stored server-side, never in client code.

    What is the base URL for the API?

    The default base URL is https://api.adsovereign.com/v1. Because AdSovereign runs as private infrastructure, the actual host can vary by customer for on-premise, hybrid, or dedicated deployments.

    Which workflows can I automate?

    You can onboard publishers, create sites and apps, configure placements, manage RTB/Prebid/Header Bidding sources, connect DSPs, create private deals, and pull reporting — the same operations available in the platform UI.

    How does reporting work?

    POST a date range to /report with the metrics, groupBy fields, and filters you need. The API returns JSON for dashboards, and /report/csv returns the same query as a CSV export for finance and BI workflows.

    How do I get API access?

    API access is provisioned per enterprise deployment. Contact the AdSovereign team through the Pilot or Contact pages to request credentials for your environment.

    Is there an OpenAPI specification I can import?

    Yes. The full OpenAPI (Swagger) JSON is available to download from this page and can be imported into Postman, code generators, or your own tooling.

    Updated