Skip to content

Partner onboarding: FAQ

We support OpenRTB 2.5 and 2.6.

Related docs:

Do you support multiple imp objects and multiple formats?

Section titled “Do you support multiple imp objects and multiple formats?”

Yes. We support:

  • Multi-imp bid requests
  • Multiple sizes in banner.format[]
  • Multi-format requests

For banner sizing, we take the union of banner.format[] and the top-level w/h. For example, format: [320x50, 300x250] sent with w: 728, h: 90 is auctioned as three sizes. Each size is validated against our supported-size list, and any size we don’t support is dropped.

Related docs:

Do you require displaymanager / displaymanagerver?

Section titled “Do you require displaymanager / displaymanagerver?”

No. Requests missing displaymanager / displaymanagerver are accepted at our server-to-server ingestion layer and passed through to demand partners — we do not drop them. Supplying them is still strongly recommended, as some DSPs apply SDK-level filtering when these fields are absent.

Current supported integrations include:

  • OpenRTB (/ortb)
  • Prebid.js (client adapter)
  • Prebid Server Adapter

Related docs:

Yes. GZIP/compressed JSON is required on server-to-server integrations.

Related docs:

No channel-specific QPS throttling is currently enforced.

Primary data centers are in Las Vegas, Amsterdam, and Tokyo.

Yes, we strictly enforce the Supply Chain Validation files (which includes the schain object, the (app-)ads.txt and the sellers.json when applicable)

Related docs:

Yes. Full schain transmission is expected for monetization.

Related docs:

Both models can be supported depending on your preference.

Because Adagio doesn’t have direct demand: NO.

Supported demand includes banner/display, video (including VAST), native, interstitial, playable/rewarded, and MRAID-based demand depending on integration.

Which VAST / Native / MRAID versions are supported?

Section titled “Which VAST / Native / MRAID versions are supported?”
  • Native versions: 1.1 and 1.2 (1.0 is rejected)
  • VAST’s versions: up to 4.0
  • MRAID supported

We do not enforce a minimum API / MRAID / OMID version.

Related docs:

How is OMID handled, and does it affect counting or billing?

Section titled “How is OMID handled, and does it affect counting or billing?”

We signal OMID to our bidders only when both source.ext.omidpn and source.ext.omidpv are present and non-empty (we set imp[].api = 7 if it is missing). If either field is missing or empty, the OMID signal is stripped from the request.

Declaring OMID does not change impression counting or billing — those are driven by impression trackers, not by the OMID declaration. Native inventory does not require OMID.

Related docs:

On Native, impressions are counted using eventtrackers, not burl.

Which video parameters are required/recommended?

Section titled “Which video parameters are required/recommended?”

video.mimes is required. Commonly recommended parameters include: minduration, maxduration, startdelay, protocols, w, h, plcmt, linearity, api, companiontype.

For non-Prebid (as those use our adapter to handle no bids in a custom manner) integrations, no-bid responses can be returned as HTTP 204 No Content.

Supported in onboarding responses:

  • GDPR (regs.ext.gdpr, user.ext.consent)
  • IAB TCF v.2.3
  • US Privacy / MSPA
  • GPP
  • COPPA

Related docs:

Adagio strips all private information and forwards the request to demand partners. Nevertheless, usually those tend to perform worse.

Yes (e.g. ID5, Panorama ID, RampID, ConnectID, UID2…), when included in the request, external IDs are broadcasted to demand partners.

Related docs:

Yes. SKAdNetwork is supported. Adagio doesn’t have an ID itself by has aggregated the IDs from its demand partners to be included on iOS app configuration files.

Related docs:

Are blocklists and safety controls available?

Section titled “Are blocklists and safety controls available?”

Yes. Blocklists can be configured for app/category/domain constraints (bapp, bcat, badv) either within the request’s parameters or through our interface (additive to those within the request)

Related docs:

  • Strict lower boundary appears at 470ms
  • Practical target shared in forms is around 1000ms to 1500ms depending on setup

Related docs:

adm-based impression tracking is supported. Impression expiration and request/response consistency rules are also applied.

What is the impression expiration window? Does imp[].exp or bid expiration take priority?

Section titled “What is the impression expiration window? Does imp[].exp or bid expiration take priority?”

The value we use to determine whether an impression is expired is bid.exp — the expiration returned by the winning bidder (from the bidstream, or the default value agreed with Adagio at the start of the partnership), capped by our own upper bound of 2700s.

The request’s imp[].exp is forwarded to demand partners so you can express your preference, but it does not override bid.exp.

Should the IP and User-Agent stay consistent between the bid request and impression / billing notifications?

Section titled “Should the IP and User-Agent stay consistent between the bid request and impression / billing notifications?”

Yes, we recommend keeping the IP and User-Agent consistent between the request and any downstream notification. Buyers and IVT / measurement vendors apply their own consistency checks, and mismatches can lead them to invalidate impressions.

cid is present when the winning demand partner/bidder on Adagio’s side provides it.

cat depends on whether the winning demand partner provides it.

For this Premium account, onboarding responses indicate reporting can be delivered through:

  • API
  • Email
  • Adagio platform dashboards

Related docs: