AppLovin ALX DSP response
AppLovin runs an in-app exchange that its MAX demand partner documentation calls AppLovin RTB, also abbreviated ALX. AppLovin's public pages document the bid response contract, so this profile checks responses only.
Direction and version
AppLovin sends bid requests to DSPs. The profile checks the bid response a DSP sends back to AppLovin.
OpenRTB 2.5 with Native 1.2 event trackers. Native markup may go in bid.adm_native or as an escaped JSON string in adm, and SKOverlay flags are integers.
The RTBlint profile applovin-alx checks responses against the published contract.
Rules beyond the OpenRTB spec
- Each bid needs
id,impid,price,adomain,burl,cat,crid, andadm(oradm_nativefor native). Only the firstadomainentry is used. - The whole bid response may be at most 4 KB.
curmust be USD, and an omitted currency means USD.bid.ext.crtypemust name a supported format: HTML, MRAID 1.0 to 3.0, native, or VAST 2.0 to 4.2.- VPAID 1.0, VPAID 2.0, and ORMMA are not supported, and Native creatives may not include video assets.
bid.bundlemust be the advertised app. A bid that reuses the publisher'sapp.bundleis rejected.- HTML bids that carry SKAdNetwork data need
bid.ext.clicktrackers, and CTV video bids needbid.ext.duration. - SKAdNetwork responses use version 2.0 or later, a non-empty
fidelitieslist, UUID nonces, and Unix millisecond timestamps as strings.itunesitemmust matchbid.bundle. ${AUCTION_LOSS}is substituted only inlurl.- A supplied
seatbid.seatmust be alphanumeric and at most 40 characters.
Documented extensions
| Path | Meaning |
|---|---|
bid.ext.crtype | Creative format of the markup. |
bid.ext.clicktrackers | Click tracking URLs. |
bid.ext.imptrackers | Server-side impression trackers, not used for native. |
bid.ext.duration | Video length in seconds, used for CTV. |
bid.ext.vendor | Viewability vendor, ias or moat. |
bid.ext.skadn | SKAdNetwork response with campaign, fidelities, itunesitem, network, sourceapp, timestamp, and version. |
bid.ext.skadn.skoverlay | SKOverlay settings; a delay of -1 turns the delay off. |
What the validator checks for this profile
openrtb.profile.applovin.advertiser_domainAppLovin requires an advertiser domain.openrtb.profile.applovin.api_unsupportedAppLovin ALX does not support VPAID or ORMMA.openrtb.profile.applovin.clicktrackersAppLovin HTML with SKAdNetwork requires click trackers.openrtb.profile.applovin.creative_typeAppLovin creative type must identify a supported HTML, MRAID, Native or VAST format.openrtb.profile.applovin.currencyAppLovin ALX accepts only USD; omitting currency defaults to USD.openrtb.profile.applovin.macro_contextAppLovin substitutes AUCTION_LOSS only in lurl.openrtb.profile.applovin.native_videoAppLovin ALX Native does not support video assets.openrtb.profile.applovin.publisher_bundleAppLovin rejects publisher app.bundle used as the advertised app bundle.openrtb.profile.applovin.response_sizeALX documents a 4 KB maximum bid response; this JSON body exceeds 4096 UTF-8 bytes.openrtb.profile.applovin.seat_formatA supplied AppLovin seat must be an alphanumeric string of at most 40 characters.openrtb.profile.applovin.skadn_campaignAppLovin SKAdNetwork campaign must be an integer string in its version-specific range.openrtb.profile.applovin.skadn_fidelityAppLovin SKAdNetwork fidelities must not be empty.openrtb.profile.applovin.skadn_mismatchAppLovin SKAdNetwork itunesitem must match advertised bid.bundle.openrtb.profile.applovin.skadn_nonceAppLovin SKAdNetwork nonce must use UUID format.openrtb.profile.applovin.skadn_timestampAppLovin SKAdNetwork timestamp must be a decimal Unix timestamp in milliseconds, expressed as a string.openrtb.profile.applovin.skadn_versionAppLovin SKAdNetwork version must be 2.0 or above.openrtb.profile.native_encodingThis exchange requires a Native request encoded as an object or a JSON object string.openrtb.profile.scope.unsupported{} has no verified OpenRTB {} {} contract in this build. Canonical specification checks were applied.
Validate against this contract
Open the tester with the AppLovin ALX DSP response profile, or run:
rtblint validate --profile applovin-alx request.json
Similar integrations
- Adform OpenRTB handler
- BidSwitch buyer 5.7
- Digital Turbine Exchange
- Display & Video 360
- Equativ bidder contract
- Google Authorized Buyers
- Index Exchange DSP
- InMobi DSP
- Magnite DV+ xAPI
- Microsoft Monetize bidder
- MobileFuse in-app bidding
- MobileFuse SDK bidding
- Sovrn request
- Unity Exchange
- Vungle Exchange
- Yandex SDK bidding