Put a live, RadioDNS-powered station card on any site in two lines, or resolve the whole namespace from your own app. This is how apps and receivers start consuming the UndertowIQ identity layer: one public, CORS-enabled resolver, one drop-in widget, no keys.
Add the script once, then a data-uiq-bearer (any RadioDNS bearer FQDN)
or data-uiq-station (a US call sign) element anywhere. It renders an isolated
(Shadow DOM) card with the station's logo, live status, and a play button for its stream.
<!-- once per page --> <script src="https://undertowiq.example/static/uiq-embed.js" defer></script> <!-- anywhere, as many as you like --> <div data-uiq-station="KAZM"></div> <div data-uiq-bearer="10650.d4d2.da0.fm.radiodns.org"></div>
These two cards are the real widget, resolving through this server right now:
The same script exposes a tiny global for programmatic use.
UndertowIQ.resolve("KAZM").then(station => { // station.identity, station.status, station.si_service.logos, // station.services, station.service_content, station.cname_target … }); UndertowIQ.mount(document.getElementById("slot"), "KAZM"); UndertowIQ.scan(container); // (re)scan for data-uiq-* nodes
The primitive under everything. Public, read-only, CORS *, no key.
Give it any bearer form; get back the normalized identity, live DNS status, real SI service content, and
the canonical edge URLs.
GET /rdns/resolve?bearer=<fqdn or callsign> GET /rdns/health/dns # NS redundancy + DNSSEC validation/expiry
Hybrid-radio stacks that already speak RadioDNS can point at this namespace directly, and there is a Genoa-compatible identity surface for platforms that probe it:
See the standard for the full bearer formats and the lookup tool to try any station.