relevantDigital.addAdsCallbacks()
Register ad-server-independent slot events, including for directly rendered bids.
Use relevantDigital.addAdsCallbacks() to register ad-server-independent slot event listeners. These events also fire when Relevant Yield renders a winning bid directly.
When to use it
Use this API when direct rendering is enabled. Ad-server event listeners alone cannot reliably show whether an ad was rendered.
For example, a Google Ad Manager slotRenderEnded event can report isEmpty: true when the ad server returns no ad. A winning Prebid bid may still render directly. Use these callbacks for logic such as hiding an ad container.
For direct-rendering guidance, see Implementation and testing guidelines for direct rendering.
Event order
Each slot triggers these events once, in order:
slotRequestedslotResponseReceivedslotRenderEnded
The events have the same meaning as the Google Ad Manager JavaScript API. Their names stay consistent across supported ad servers.
Example
window.relevantDigital = window.relevantDigital || {};
relevantDigital.cmd = relevantDigital.cmd || [];
relevantDigital.cmd.push(function() {
const printEvent = (type, ev, adUnitInstance) => {
console.info(`********** ${type} **********`);
console.info('Event: ', ev);
console.info('AdUnitInstance (if any): ', adUnitInstance);
console.info('Is direct rendering: ', ev.directRender);
console.info('Direct rendered bid: ', ev.bid);
console.info('Ad slot: ', ev.slot);
console.info('Is empty: ', ev.isEmpty);
};
relevantDigital.addAdsCallbacks({
slotRequested: (...args) => {
printEvent('slotRequested', ...args);
},
slotResponseReceived: (...args) => {
printEvent('slotResponseReceived', ...args);
},
slotRenderEnded: (ev, data) => {
printEvent('slotRenderEnded', ev, data);
},
});
});Event data
adUnitInstance
Contains Relevant Yield placement data. It is null for slots loaded outside relevantDigital.loadPrebid(), or for slots loaded with loadUnknownSlots: true.
Direct rendering fields
For directly rendered bids, ev.directRender and ev.bid may be available.
Ad-server-specific event data
Google Ad Manager
When an ad request is made and no bid renders directly, all three events use the Google Ad Manager event objects. Otherwise, the event object can differ.
Microsoft Advertising (Xandr)
When the ad server triggers the event, ev.ad contains the Xandr ad object.
Last updated
Was this helpful?