Developers · Globe API v1
Send people to a place, a set of places or your own GeoJSON on the Aureality globe, or embed the globe in your page and talk to it. You only need a link or an iframe.
Add query parameters to https://aureality.cloud/. The globe reads them once, after the Earth has loaded.
?pin=50.0875,14.4214|Old Town SquareOpen ↗
Several pins, framed together?pin=50.0875,14.4214|Prague;49.1951,16.6068|Brno;48.1486,17.1077|BratislavaOpen ↗
Fly to a view?fly=46.5580,7.8350,11Open ↗
Switch layers on?layers=quakes,wx-storms&fly=20,140,3Open ↗
Ask the visitor to choose a place?pick=Where should we meet?Open ↗
| Parameter | Value | What it does |
|---|---|---|
pin | lat,lon or lat,lon|Label; separate several with ; | Places pins and frames them. One pin flies to zoom 13. A single pin with a label opens its card after the flight. You can also repeat pin=. |
title | text | Label for pins that have none. |
text | text | A short description shown in the pin card. |
url | https://… | Adds an “Open the source” link to the pin card. Only https links are shown. |
color | hex without #, e.g. FF6B5A | Pin colour, and the colour of a geojson layer. Default amber FFB547. |
from | text | Small heading above the pin label, e.g. your app’s name. Default “Shared link”. |
fly | lat,lon or lat,lon,zoom | Flies the camera there. Zoom defaults to 12 (0 = whole Earth, 18 = street). |
geojson | https://… (URL-encoded) | Loads a GeoJSON file into the visitor’s browser and draws it. See GeoJSON. |
layers | layer ids, comma-separated | Switches these layers on, at most 40. It never switches anything off. See Layer ids. |
pick | empty, or a prompt text | Shows a prompt and waits for one tap on the map. The visitor then gets a card with a link to that spot. In an embed the spot is also sent to your page. |
Encode labels and URLs with encodeURIComponent. Pins are added only for valid coordinates (latitude −90 to 90, longitude −180 to 180).
const u = new URL('https://aureality.cloud/'); u.searchParams.set('pin', '50.0875,14.4214|Old Town Square'); u.searchParams.set('text', 'Meet by the astronomical clock at 18:00.'); u.searchParams.set('from', 'Our club'); u.searchParams.set('color', '5FD3A8'); u.toString(); // https://aureality.cloud/?pin=50.0875%2C14.4214%7COld+Town+Square&text=…
To open the globe at an exact camera, use the hash instead of a query. It is the same format the globe uses for its own place links.
| Hash | Meaning |
|---|---|
#50.0875,14.4214,16z | Latitude, longitude, zoom (up to 18). |
#50.0875,14.4214,17z,30b,55p | Optional bearing in degrees (b) and pitch in degrees (p) for a tilted 3D view. |
#…,17z&open | Also opens the details pane for what is at that point. |
#…,17z&osm=way/123456 | Same, for an OpenStreetMap object (way, relation or node). |
Put the globe in an iframe. Every link parameter above also works in the iframe’s src.
<iframe id="aureality" src="https://aureality.cloud/?pin=50.0875,14.4214|Old%20Town%20Square" title="Map: Aureality globe" style="width:100%;aspect-ratio:16/10;border:0;border-radius:12px" loading="lazy" allow="fullscreen"> </iframe> <p style="font-size:12px">Map: <a href="https://aureality.cloud/">Aureality</a>, data credits on the map and in <a href="https://aureality.cloud/legal/#credits">Legal</a></p>
Only the globe itself, https://aureality.cloud/, can be embedded. Other pages of the site and sign-in cannot.
Keep the globe large enough to stay usable: at least 320 × 320 pixels. Do not cover or crop the map’s own credits; most map data needs them. See Data and licences.
Your page and the globe exchange postMessage messages. Every message is an object whose type starts with aureality:. Wait for aureality:ready before you send: the globe ignores commands that arrive before the Earth has loaded.
const globe = document.getElementById('aureality'); const ORIGIN = 'https://aureality.cloud'; const send = (msg) => globe.contentWindow.postMessage(msg, ORIGIN); addEventListener('message', (e) => { if (e.origin !== ORIGIN) return; // accept events only from the globe const m = e.data; if (m.type === 'aureality:ready') { send({ type: 'aureality:pin', pins: [ { lat: 50.0875, lon: 14.4214, label: 'Prague', text: 'Office' }, { lat: 48.2082, lon: 16.3738, label: 'Vienna', color: '#5FD3A8' } ]}); } if (m.type === 'aureality:selected') console.log('Tapped', m.label, m.lat, m.lon); if (m.type === 'aureality:picked') console.log('Chosen', m.lat, m.lon, 'zoom', m.zoom); });
| type | Fields | What happens |
|---|---|---|
aureality:pin | lat, lon, optional label, text, url (https), color (#RRGGBB), zoom. Or pins: [ … ] for several. fly: false keeps the camera still. | Adds pins and frames them. Tapping a pin opens its card and sends aureality:selected. |
aureality:geojson | data (a Feature or FeatureCollection), optional color, fly: false | Draws the GeoJSON and frames it. Your data stays in the visitor’s browser. |
aureality:fly | lat, lon, optional zoom (default 12) | Flies the camera. |
aureality:layers | on: ['quakes', …] | Switches layers on, at most 40 ids. Unknown, planned and sign-in ids are ignored. In an embed they are not saved. |
aureality:pick | optional prompt | Waits for one tap, drops a pin there and sends aureality:picked. |
aureality:clear | none | Removes every pin and GeoJSON layer added through the API. Layers you switched on stay on. |
| type | Fields | When |
|---|---|---|
aureality:ready | version: 1 | The Earth has loaded and the globe accepts commands. |
aureality:selected | lat, lon, label | The visitor tapped a pin added through the API. |
aureality:picked | lat, lon, zoom | The visitor chose a place after aureality:pick. Coordinates have 6 decimals (about 10 cm). |
The globe accepts commands from any page that embeds it and posts its events to the parent page. Events carry only coordinates and labels, so never put private data in pins you send. Check e.origin in your own listener, as in the example.
Send a Feature or FeatureCollection (RFC 7946, coordinates as [lon, lat]). The globe draws:
properties.name, title or label, its card text from description or text, a source link from url and its own colour from color.{
"type": "FeatureCollection",
"features": [
{ "type": "Feature",
"properties": { "name": "Brno", "description": "Second stop", "url": "https://www.brno.cz/" },
"geometry": { "type": "Point", "coordinates": [16.6068, 49.1951] } },
{ "type": "Feature",
"properties": {},
"geometry": { "type": "LineString",
"coordinates": [[14.4214, 50.0875], [16.6068, 49.1951], [17.1077, 48.1486]] } }
]
}For ?geojson=, the file must be served over https and allow cross-origin reads (Access-Control-Allow-Origin: *, or at least https://aureality.cloud). The visitor’s browser fetches it straight from your server; Aureality does not copy or store it. If the file cannot be loaded, the globe opens without it.
Use these with ?layers= or aureality:layers. Each layer keeps the credits and limits it has on the globe.
| Group | Ids |
|---|---|
| Map | s2base satellite imagery · osmghost map lines · night day and night · borders · capitals · closeup tilt into 3D · terrain · buildings3d · monuments |
| Geopolitics | eu · nato · asean · au · gov · elections · ua-war Russia’s war against Ukraine |
| News | news-world · news-eupress · news-relief · news-social · news-x · news-us · news-eu · news-asia · news-africa · news-mideast · news-latam · news-econ |
| Economy and people | gdppc · income · wb-growth · wb-infl · wb-unemp · wb-trade · pop · wb-urban |
| Agriculture, industry | wb-agland · wb-cereal · wb-agemp · wb-indva · wb-manuf · wb-hitech |
| Transport, infrastructure | tt-trains and tt-infra live departures (Europe, zoom 8+) · wb-air · wb-rail · wb-elec · wb-renew · wb-water · wb-internet |
| Health | wb-life · wb-hexp · wb-docs |
| Sport | sport-football · sport-hockey · sport-basketball · sport-amfootball · sport-baseball · sport-tennis |
| History | hist-today · hist-founded |
| Culture | cu-fest festivals · cu-tours concert tours · cu-scena theatres, opera and concert halls · cu-kina cinemas · cu-bands bands · cu-obce events in Czech municipalities · cu-mesta city event calendars |
| Nature | quakes · species from GBIF: sp-lynx · sp-wolf · sp-bear · sp-bison · sp-beaver · sp-stork · sp-oak · sp-lime · sp-orchid · sp-edelweiss |
| Weather | wx-aureality · wx-clouds · wx-rain · wx-radar-cz · wx-temp · wx-wind · wx-storms |
| Air and space | sky-top most interesting now · air · sats · sats-all · sky-aerial |
| Webcams | cam-mountain · cam-weather · cam-traffic · cam-city · cam-landmark · cam-institution · cam-nature |
The buttons send real messages to the embedded globe below. The log shows what goes out and what comes back.
Loading the globeThe Earth takes a few seconds to load.
Pins, GeoJSON and coordinates you send stay in the visitor’s browser for that visit. Aureality does not receive, store or publish them. You are responsible for having the right to show what you send.
The globe shows its credits on the map, and the full list is on the Legal page. When you link to or embed the globe, keep those credits visible. When you show a screenshot or video of the globe, credit at least the base map:
Aureality (aureality.cloud) · © OpenStreetMap contributors (ODbL) · OpenMapTiles / OpenFreeMap · Sentinel-2 cloudless 2016 by EOX IT Services GmbH (CC BY 4.0), contains modified Copernicus Sentinel data 2016 & 2017 · NASA Black Marble · Terrain: Mapterhorn, Copernicus DEM
| Source | Used for | Licence |
|---|---|---|
| OpenStreetMap | Roads, buildings, borders and names in the detailed map; place details | ODbL 1.0, credit “© OpenStreetMap contributors” |
| OpenMapTiles, OpenFreeMap | Vector tiles | Credit required |
| EOxCloudless 2016 | Satellite imagery | CC BY 4.0, EOX IT Services GmbH |
| NASA Black Marble, Blue Marble | City lights, Earth textures | Public domain |
| Mapterhorn | Terrain | Copernicus DEM, credit shown |
| Natural Earth | Borders at small scales, capitals | Public domain |
| World Bank Open Data | Country indicators | CC BY 4.0 |
| Wikipedia, Wikidata | World events, On this day, place summaries | CC BY-SA 4.0; Wikidata CC0 |
| GBIF | Species records | Per dataset, mostly CC0 or CC BY |
| adsb.lol | Aircraft | ODbL 1.0. Not for navigation. |
| Live feeds (USGS, weather, sport results, timetables, webcams) | Live layers | As listed per layer in its details pane and on the Legal page |
The API lets you show these layers on the globe. It does not give you a licence to download or reuse the layer data elsewhere; for that, go to each source and follow its licence. Several live feeds are fetched through small aureality.cloud proxies with short caches. Those proxies serve the globe only and are not part of this API.