Live updates
Follow one market per WebSocket and fetch changes from the CDN.
Connect to a market
wss://auctionhouse.fyi/api/v1/live?market=forever.normal.alliance.usRequires live. Use one connection per market. External clients pass the bearer credential in the upgrade request; browser clients use their same-origin session. Do not put credentials in the URL.
The first message is hello, carrying the current sequence, checkpoint, changes, sealed periods and capabilities. An ah notice names a CDN change file; it does not contain the market rows themselves. Other messages include sealed, alert and roles.
Catch up after a gap
Keep the last applied sequence per market. Fetch and apply change files in order. On a gap, fetch the checkpoint and its subsequent changes; refresh the file listing when a capability or URL is missing. Follow the CDN protocol and message fixtures for the exact replay rules.
The existing Rust feed is the full implementation reference. Let the file layer carry data and the socket notify your client that it changed.
Renew authentication
{"t":"auth","token":"<fresh credential for the same user and kind>"}The server responds with {"t":"auth","until":…} or an error. API-key verification lasts five minutes; refresh authentication to keep the socket alive. A session is valid until its token expiry plus ten minutes, and a device until deletion. Close code 4401 means authentication expired; 4403 means live access was lost.
Versioned contracts and runnable examples live with the source specification →.