← Explore EarthData Admin →

Realverse data model

Integration contract · September 2026. This describes the current software, its open inputs, and how higher-quality data can replace or enrich them.

Current open inputs

LayerData / formatCurrent limits and provenance
ImageryEOX Sentinel-2 cloudless 2016/17; JPEG, geographic WMTS tile templateApproximately 10 m source imagery. Historic mosaic, CC BY 4.0. Not current aerial imagery or photogrammetry.
TerrainMapzen elevation; 256 × 256 Terrarium RGB PNG, Web Mercator XYZDecode metres as R × 256 + G + B / 256 − 32768. Resolution and vertical datum vary by underlying source; zoom 14 online maximum for the bundled provider.
Buildings / infrastructureOpenStreetMap Overpass converted to GeoJSON; WGS84 coordinatesOSM IDs and original tags retained. ODbL 1.0. Heights may be absent; two 3 m storeys are an estimated fallback. Indoor coverage is incomplete.
Named placesNatural Earth country label anchors; GeoNames cities/towns; OSM local namesNatural Earth public domain; GeoNames CC BY 4.0; OSM ODbL. Labels are selected by scale, priority and projected overlap.
Featured worldsSix OSM AOI snapshots; 65 × 65 terrain grids; 512 × 512 imagery extracts; Blender and GLBSnapshot date, bounds and source IDs are in each experience manifest. Landmark models are approximate original reconstructions. Industrial and civic additions are synthetic.

EOX · Mapzen source attributions · OSM · Natural Earth · GeoNames

Feature dataset contract

Use POST /api/atlas/datasets on the Mac server, or its Data Admin form. Management requires an administrator; enabled datasets are visible to signed-in users of that Realverse installation. Data is stored in the persistent Mac volume, not in website source files.

{
  "name": "Surveyed buildings · Agra",
  "mode": "replace",
  "priority": 80,
  "revision": "survey-2026-09",
  "attribution": "Your organisation / survey team",
  "license": "Proprietary · internal use",
  "crs": "EPSG:4326",
  "altitudeMode": "terrain",
  "horizontalAccuracyM": 0.15,
  "verticalAccuracyM": 0.3,
  "verticalDatum": "EGM2008",
  "capturedAt": "2026-09-01",
  "fieldMap": {"name":"ASSET_NAME", "height":"HEIGHT_M"},
  "geojson": {
    "type": "FeatureCollection",
    "features": [{
      "type": "Feature",
      "id": "survey-building-104",
      "geometry": {"type":"Polygon", "coordinates":[[
        [78.041,27.173], [78.0412,27.173],
        [78.0412,27.1732], [78.041,27.1732], [78.041,27.173]
      ]]},
      "properties": {
        "rv_target_id": "way/REPLACE_WITH_REAL_OSM_ID",
        "ASSET_NAME": "Surveyed building",
        "building": "yes", "HEIGHT_M": 12.4,
        "min_height": 0,
        "building:colour": "#c7b79b", "roof:colour": "#875d49",
        "asset_owner": "Your organisation",
        "inspection_date": "2026-09-01"
      }
    }]
  }
}

The example target ID is a placeholder; use an actual ID from a mapped feature or source snapshot. Import limits: 3.5 MB, 5,000 features, 150,000 coordinate positions per dataset, 24 datasets per installation. Attributes are preserved as JSON; nesting is limited to 12 levels. Stable unique feature IDs are strongly recommended. Longitude/latitude coverage is ±180° / ±85°. Polygon rings must be closed. GeometryCollections are not accepted; flatten them first.

AttributeMeaning in this renderer
nameHuman-readable label and search name. Original source attributes remain available.
building, building:partMarks an extruded building footprint. Point, MultiPoint, LineString, MultiLineString, Polygon and MultiPolygon are accepted.
height, min_heightMetres above the local base: top and bottom of an extruded building / part. building:levels supplies a 3 m/storey estimate when height is absent. The display currently caps extrusion at 400 m.
building:colour, roof:colourCSS named colours or #RGB / #RRGGBB. The first value is used for semicolon-separated tags. Missing/unsupported colours use estimated material palettes. Rendered appearance also depends on lighting.
building:material, roof:materialHelps choose a fallback appearance; it does not establish the actual observed colour.
highway, widthRoad/path class and width in metres. Missing widths use illustrative defaults.
natural, waterway, landuse, leisureBasic land-cover, water and recreation styling.
indoor, room, levelMapped room/indoor classification and floor visibility. Detailed interiors are better supplied as georeferenced meshes or 3D Tiles.
rv_target_idExact feature to replace/enrich, normally an OSM way/…, relation/… or node/… ID.
Additional attributesPreserved without inventing their meaning. Custom field mapping can map name, height, min_height, building, levels, colours/materials, indoor, level and target ID to your field names.

Download machine-readable dataset schema · Download a synthetic sample dataset

Augment, replace, enrich

  1. Augment adds features under a dataset-specific namespace.
  2. Replace uses the exact target ID to replace a feature’s geometry and attributes. If no target is loaded, it adds the new feature. A matching authored landmark model is hidden while a replacement is active.
  3. Enrich merges attributes into the matched feature and preserves its geometry. Unmatched IDs are counted and remain unapplied until the target is loaded.

Enabled datasets apply in ascending priority; higher priority wins. Equal priorities use stable dataset-ID order. Disabling a layer restores the underlying public feature. There is no automatic spatial conflation or inferred identity matching. Coordinate proximity alone does not replace a feature.

Each rendered imported feature carries source name, layer/feature IDs, mode, revision, attribution, licence and declared accuracy/datum. These declarations are supplied by the data owner; Realverse does not certify them. Attribute enrichment does not automatically rebuild a detailed landmark mesh. Use replacement geometry or 3D Tiles when geometry changes.

Soft corners: optional plan-view corner rounding uses an inset of up to 0.55 m, capped at 15% of neighbouring edge lengths. Concave corners and stored source geometry are retained. Switch it off for exact footprint display. It is a visual style, not a surveyed geometry correction.

Dataset API

GET  /api/atlas/datasets                 summaries and limits
GET  /api/atlas/datasets?full=1          enabled datasets for rendering
POST /api/atlas/datasets                 import a FeatureCollection
POST /api/atlas/datasets/connect         import from HTTPS URL + tokenEnv
POST /api/atlas/datasets/refresh         {"id":"…"}
POST /api/atlas/datasets/action          {"id":"…","action":"enable|disable|delete"}
GET  /api/atlas/datasets/export?id=…     export source data and metadata

Connected snapshots are refreshed manually. Offline mode prevents upstream refreshes. File imports work offline. Tokens are referenced by server environment-variable name; token values are not returned to browsers.

Stream larger or more detailed data

Register through Data Admin or POST /api/atlas/providers. The browser receives local proxy URLs; provider templates and credential references are withheld from the public source catalogue.

{"source": {
  "id": "company-features", "name": "Surveyed feature tiles",
  "kind": "features", "protocol": "geojson",
  "scheme": "mercator", "format": "json",
  "minZoom": 0, "maxZoom": 18,
  "template": "https://your-service.example/features/{z}/{x}/{y}.geojson",
  "tokenEnv": "COMPANY_DATA_TOKEN",
  "attribution": "Your organisation", "license": "Your agreement",
  "revision": "2026-09", "offline": true
}}
ProviderContract
ImageryHTTPS JPG or PNG tile template with {z}/{x}/{y}. Web Mercator XYZ or geographic grid with two root tiles. Raster tiles render as the selected base imagery.
Terrain256 × 256 Terrarium RGB PNG. WGS84/Web Mercator tile addressing. Elevation values must be metres; vertical datum must be understood by the supplier.
Feature tilesEach tile returns a GeoJSON FeatureCollection in WGS84, with canonical attributes above. The viewer requests zoom 14 when available, otherwise the provider’s supported limit. Keep each tile within the feature import limits.
3D TilesRoot tileset.json URL, kind 3dtiles, format bin, maxZoom 0. Georeference via the tileset transforms / bounding volumes. Relative resources must remain within the configured origin and base directory. Suitable for detailed buildings, photogrammetry and indoor models.

Change the revision when changing provider contents or configuration, because tile caching includes the revision. The managed connector accepts public HTTPS hosts and rejects redirects/private addresses. For explicitly trusted private-network providers, mount a source definition using REALVERSE_SOURCES; see the server-provider setup guide. Secrets belong in Docker environment variables or a private mounted definition, not feature attributes or browser code.

AOI downloads support permitted raster/terrain/feature sources. Imported feature datasets are retained in the Mac data volume and can be exported separately from Data Admin; they are not embedded in tile AOI packages. Arbitrary 3D Tiles dependency graphs are not yet packaged as complete offline AOIs. Distribute the original licensed mesh package for fully offline interiors. GeoTIFF, LAS/LAZ, IFC, CityGML, Shapefile and GeoPackage require conversion to supported tile/GeoJSON/mesh formats; they are not direct upload formats in this version.

Coordinate and accuracy rules

GeoJSON coordinate order is longitude, latitude, optional height. The default EPSG:4326 + altitudeMode: terrain drapes features over the current elevation source. For absolute XYZ, declare EPSG:4979, altitudeMode: absolute, and supply every coordinate with WGS84 ellipsoidal height in metres. Building height attributes are then added above the geometry base.

Realverse does not automatically convert projected CRSs or geoid heights. Reproject and apply the correct vertical transformation first; renaming a CRS is insufficient. Declared horizontal/vertical accuracy and acquisition date are preserved independently of the rendered terrain’s accuracy.

Blender exports use a local east/north/up metre frame around an explicit WGS84 origin. GLB converts that to east/up/south and stores origin metadata in scene extras. This small-AOI tangent-plane approximation is not a global projected grid. Origin, source datum, bounds and terrain grids are distributed with each scene.

The Data Admin currently runs on the Mac/Docker server. The hosted site exposes these specifications and a link to local administration; it does not upload proprietary data to the hosted service. Native Unity ingestion of these imported layers, automated BIM conversion, geometric conflation and full global VR/multiplayer remain separate extensions.