You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Investigate and document Amazon APS integration #140
The provided network data describes a sequence of HTTP requests related to Amazon Publisher Services (APS), including its Transparent Ad Marketplace (TAM) features, integrated into the website https://www.publisher.com/. These calls are part of a programmatic advertising workflow, involving basic configuration loading, third-party identity vendor setup (for cookieless targeting via APS Connections Marketplace), script fetching, ad bidding, tracking, and impression measurement. All requests originate from the Men's Journal site and interact with Amazon's ad ecosystem, including integrations with third-party providers like Blis Media, GumGum, LiveRamp, ID5, Lotame, and others. The flow ensures ads are configured, enriched with user IDs for better targeting, bid on, tracked, and rendered.
List of Full URLs and Their Purposes
Here is each full URL from the data (now including the new one), along with a concise explanation:
Purpose: Fetches basic configuration data for APS account "9999". The response is lightweight JavaScript that initializes the global _aps object, sets up an event queue, records viewer country (US), and configures analytics sampling. This is the foundational bootstrap for the entire APS integration.
Purpose: Retrieves production configuration for third-party identity vendors via APS Connections Marketplace (part of TAM/UAM). The JSON response includes executable JS snippets to dynamically load scripts for vendors like LiveRamp, PubCommon, Lotame, 33Across, ID5, Anonymised, and PubLink; metadata registry; and whitelists bid keys (e.g., "liveRamp", "id5"). This enables cookieless user ID syncing/resolution to enrich targeting in auctions, boosting bid rates and CPMs without extra dev work.
Purpose: Loads the client-side measurement script (aps_csm.js) for error reporting, event tracking, pixel firing, and cross-frame communication. Essential for viewability metrics and integration with apstag.
Purpose: Sends bid request with slot details; response includes enriched targeting (leveraging resolved IDs from step 2) and winning creative info (e.g., GumGum ad).
Purpose: Fetches ad measurement JS to render the winning ad and track viewability/events.
Logical Flow Explanation
The requests follow a sequential, dependency-based flow in APS header bidding (via apstag.js and TAM), loaded asynchronously to avoid blocking page render. ID enrichment happens early to maximize auction value.
Here's the updated step-by-step progression (with timings from data):
Basic Initialization (Bootstrap Config): Starts with https://config.aps.amazon-adsystem.com/configs/9999 (~314 ms queued, total 389 ms). Triggered early by the APS tag on page load; sets up _aps queue and core events (e.g., country=US). Required foundation—no bidding without this.
Third-Party Identity Vendor Configuration: Immediately follows with https://c.amazon-adsystem.com/cdn/prod/config?... (~368 ms queued, total 170 ms—very fast, CDN-cached). Uses the basic _aps setup to load/enable 9+ ID providers (e.g., LiveRamp, ID5, Lotame via Connections Marketplace). Dynamically injects their scripts, resolves/syncs pseudonymous IDs, and pushes "idVendors/enabled/set" event with bid keys. This enriches user context for higher-value bids in cookieless environments (critical for TAM).
Measurement and Communication Script Loading: Then https://c.amazon-adsystem.com/bao-csm/aps-comm/aps_csm.js (~1.4 s queued, total 197 ms). Provides tools for tracking resolved IDs, errors, and pixels throughout the flow.
Ad Bidding with Enriched Targeting: https://aax.amazon-adsystem.com/e/dtb/bid (~3.1 s queued, total 689 ms). Uses resolved IDs (e.g., injected as amzniid or kv pairs) to auction slots; returns winner (e.g., GumGum creative at higher CPM due to better matching).
Partner-Specific Tracking: Post-bid, fires pixels like https://s.amazon-adsystem.com/ecm3?... for Blis (~4.3 s queued, total 180 ms) to attribute events across networks.
Rendering and Final Measurement: https://aax-events-cell01-cf.us-east.aps.axp.amazon-adsystem.com/e/dtb/admj?... (~2.5 s queued, total 1.4 s). Renders ad via apstag.renderImp and logs viewability/metrics, closing the loop.
Overall, the flow is setup → ID enrichment → tooling → enriched auction → tracking → render. The new config fits perfectly between basic init and bidding, explaining potential higher bid density (IDs passed to buyers). It's parallel/async where possible (e.g., ID scripts load lazily), but dependencies ensure IDs are ready for /dtb/bid. Delays remain server/queueing; adding ID vendors increases downstream requests (privacy/perf trade-off), but boosts revenue via TAM.
Activity
[-]Investigate and document Amazon TAM integration[/-][+]Investigate and document Amazon APS integration[/+]ChristianPavilonis commentedon Dec 22, 2025
APS calls
The provided network data describes a sequence of HTTP requests related to Amazon Publisher Services (APS), including its Transparent Ad Marketplace (TAM) features, integrated into the website
https://www.publisher.com/. These calls are part of a programmatic advertising workflow, involving basic configuration loading, third-party identity vendor setup (for cookieless targeting via APS Connections Marketplace), script fetching, ad bidding, tracking, and impression measurement. All requests originate from the Men's Journal site and interact with Amazon's ad ecosystem, including integrations with third-party providers like Blis Media, GumGum, LiveRamp, ID5, Lotame, and others. The flow ensures ads are configured, enriched with user IDs for better targeting, bid on, tracked, and rendered.List of Full URLs and Their Purposes
Here is each full URL from the data (now including the new one), along with a concise explanation:
https://config.aps.amazon-adsystem.com/configs/9999
_apsobject, sets up an event queue, records viewer country (US), and configures analytics sampling. This is the foundational bootstrap for the entire APS integration.https://c.amazon-adsystem.com/cdn/prod/config?src=9999&u=https%3A%2F%2Fwww.publisher.com
https://c.amazon-adsystem.com/bao-csm/aps-comm/aps_csm.js
aps_csm.js) for error reporting, event tracking, pixel firing, and cross-frame communication. Essential for viewability metrics and integration withapstag.https://aax.amazon-adsystem.com/e/dtb/bid
https://s.amazon-adsystem.com/ecm3?ex=blis.com&id=6948726A4D5E3025EEA6250E_
https://aax-events-cell01-cf.us-east.aps.axp.amazon-adsystem.com/e/dtb/admj?...
Logical Flow Explanation
The requests follow a sequential, dependency-based flow in APS header bidding (via
apstag.jsand TAM), loaded asynchronously to avoid blocking page render. ID enrichment happens early to maximize auction value.Here's the updated step-by-step progression (with timings from data):
Basic Initialization (Bootstrap Config): Starts with
https://config.aps.amazon-adsystem.com/configs/9999(~314 ms queued, total 389 ms). Triggered early by the APS tag on page load; sets up_apsqueue and core events (e.g., country=US). Required foundation—no bidding without this.Third-Party Identity Vendor Configuration: Immediately follows with
https://c.amazon-adsystem.com/cdn/prod/config?...(~368 ms queued, total 170 ms—very fast, CDN-cached). Uses the basic_apssetup to load/enable 9+ ID providers (e.g., LiveRamp, ID5, Lotame via Connections Marketplace). Dynamically injects their scripts, resolves/syncs pseudonymous IDs, and pushes"idVendors/enabled/set"event with bid keys. This enriches user context for higher-value bids in cookieless environments (critical for TAM).Measurement and Communication Script Loading: Then
https://c.amazon-adsystem.com/bao-csm/aps-comm/aps_csm.js(~1.4 s queued, total 197 ms). Provides tools for tracking resolved IDs, errors, and pixels throughout the flow.Ad Bidding with Enriched Targeting:
https://aax.amazon-adsystem.com/e/dtb/bid(~3.1 s queued, total 689 ms). Uses resolved IDs (e.g., injected asamzniidor kv pairs) to auction slots; returns winner (e.g., GumGum creative at higher CPM due to better matching).Partner-Specific Tracking: Post-bid, fires pixels like
https://s.amazon-adsystem.com/ecm3?...for Blis (~4.3 s queued, total 180 ms) to attribute events across networks.Rendering and Final Measurement:
https://aax-events-cell01-cf.us-east.aps.axp.amazon-adsystem.com/e/dtb/admj?...(~2.5 s queued, total 1.4 s). Renders ad viaapstag.renderImpand logs viewability/metrics, closing the loop.Overall, the flow is setup → ID enrichment → tooling → enriched auction → tracking → render. The new config fits perfectly between basic init and bidding, explaining potential higher bid density (IDs passed to buyers). It's parallel/async where possible (e.g., ID scripts load lazily), but dependencies ensure IDs are ready for
/dtb/bid. Delays remain server/queueing; adding ID vendors increases downstream requests (privacy/perf trade-off), but boosts revenue via TAM.