Server to server
OpenRTB (oRTB)
POST JSON bid requests to the auction endpoint. We support OpenRTB 2.5 and 2.6 for banner, native, and video. Typical timeout on our side is 150–200ms; set yours a little higher to absorb network hop.
- Endpoint: https://rtb.amlimedia.com/openrtb/auction
- Method: POST, Content-Type application/json
- Auth: account token in header
x-amli-token - No-bid: HTTP 204 or OpenRTB nbr in a 200 body
Replace YOUR_TOKEN and placement IDs with values from sales after onboarding. Do not send live user IDs until the privacy addendum is signed.
{
"id": "req-example-001",
"at": 1,
"tmax": 180,
"imp": [{
"id": "1",
"banner": { "w": 300, "h": 250 },
"bidfloor": 0.4,
"bidfloorcur": "USD",
"tagid": "YOUR_PLACEMENT_ID"
}],
"site": {
"id": "YOUR_SITE_ID",
"domain": "publisher.example",
"page": "https://publisher.example/article"
},
"device": { "ua": "...", "ip": "0.0.0.0" }
}
Header bidding
Prebid.js and Prebid Server
Add Amli Media as a bidder in your existing wrapper. Client-side is fine for a first placement. Move high-volume sites to Prebid Server so auctions do not sit in the browser.
- Bidder code: amliMedia
- Required params:
placementId,accountId - Optional:
floor(CPM),test(1 in staging) - Prebid Server: s2s config host provided at onboarding
pbjs.setConfig({
enableSendAllBids: true,
bidderTimeout: 1200
});
pbjs.addAdUnits([{
code: "div-gpt-ad-300x250",
mediaTypes: {
banner: { sizes: [[300, 250], [336, 280]] }
},
bids: [{
bidder: "amliMedia",
params: {
accountId: "YOUR_ACCOUNT_ID",
placementId: "YOUR_PLACEMENT_ID"
}
}]
}]);
Client tag
JS tag
Drop a container and script on the page. Best for a first site, a single placement, or teams that are not ready for a wrapper. Pass the placement ID issued in the publisher dashboard.
- Load the script once per page
- Call
AmliTag.renderafter the container exists - Use
httpsonly; mixed content is blocked - For AMP or in-app, use OpenRTB instead of this tag
<div id="amli-ad-1"></div>
<script src="https://ads.amlimedia.com/js/tag.js" async></script>
<script>
window.AmliTag = window.AmliTag || { q: [] };
AmliTag.q.push(function () {
AmliTag.render({
slot: "amli-ad-1",
placementId: "YOUR_PLACEMENT_ID",
sizes: [[300, 250], [320, 50]]
});
});
</script>
Need a test token?
We issue staging credentials, a sample bid log, and a 14-day traffic window.