Open data
What we share back
Some of our datasets build on openly licensed data. OpenStreetMap’s licence, the Open Database License (ODbL) 1.0, asks anyone who publishes something made from it to offer, free, the data they derived or the method of making it. Here they are.
Toll plaza locations
Our toll tariffs come from the Government Gazette, which names each plaza but doesn’t say where it is. The positions and provinces come from OpenStreetMap toll booths. Data © OpenStreetMap contributors, available under the ODbL 1.0.
- locations.json: the plaza positions and provinces we derived (ODbL 1.0)
- plazas.json: each gazetted plaza and the OpenStreetMap names we match it by
- toll-tariffs-locate.py: the script that makes them (MIT licence)
- README.txt: how to rebuild it, and the licences
Every dataset, in bulk (Parquet)
Each live dataset’s full history as Parquet files: every record each release held, and the facts they cite with their documents and pages. Downloads take an API key, like the records; the list, sizes, licences and SHA-256 fingerprints are open to everyone, so a copy can be checked. How to use them: the docs. Every dataset is also described in DCAT at /catalog.json.
14 datasets, 23 files, 54.5 MB in all. Each file holds every record any release held (with the releases it ran between) or the facts they cite, as Parquet. Download one with your API key: curl -OJ -H "Authorization: Bearer um_live_…" https://api.unmapped.co.za/v1/datasets/<id>/snapshots/<file>. Then check it: shasum -a 256 -c <file>.sha256. The list as JSON: /open/snapshots.json.
Every file, with its size and fingerprint (23)
| Dataset | Files | Licence |
|---|---|---|
| Dam levels with full history Release 2026-11-09 | dam-levels-2026-11-09-records.parquet681 record rows, 55 kB sha256 f1c70ed2a3e4fe98…dam-levels-2026-11-09-facts.parquet3,405 facts, 127 kB sha256 746279ef1561a99a… | From the Department of Water and Sanitation, a state work with no published reuse terms; kept fully open and free by the owner's decision of 10 November 2026 while permission is asked for. The file itself is under our terms. |
| Dams from space Release 2026-11-10.3 | dam-surface-from-space-2026-11-10.3-records.parquet536 record rows, 1.0 MB sha256 4acd12d313b56ea3…dam-surface-from-space-2026-11-10.3-facts.parquet52,353 facts, 1.7 MB sha256 d28d85bf808198a3… | Contains modified Copernicus Sentinel data and Digital Earth Africa products (free and open); dam outlines from OpenStreetMap (ODbL 1.0, offered at https://unmapped.co.za/open#dam-outlines). The file itself is under our terms. |
| Municipal electricity tariffs Release 2026-11-12 | electricity-tariffs-2026-11-12-records.parquet2,229 record rows, 370 kB sha256 5eabbd20e31e83ab…electricity-tariffs-2026-11-12-facts.parquet16,423 facts, 753 kB sha256 a6a790340572da28… | Figures from official texts (Government Gazette notices, regulator decisions): no copyright in them under the Copyright Act, s12(8)(a). The file itself is under our terms. |
| Rand exchange rates Release 2026-11-11 | exchange-rates-2026-11-11-records.parquet28,536 record rows, 1.7 MB sha256 542812d79297803f…exchange-rates-2026-11-11-facts.parquet57,072 facts, 1.6 MB sha256 813cc8b9f1f6f411… | From the European Central Bank's euro reference rates, reproduced under the ECB's copyright notice (free use with the ECB cited and changes stated; the rand cross rates are worked out by us). The file itself is under our terms. |
| Fuel prices by zone and grade Release 2026-11-04 | fuel-prices-2026-11-04-records.parquet16,641 record rows, 951 kB sha256 89c78776da565267…fuel-prices-2026-11-04-facts.parquet16,641 facts, 416 kB sha256 071a7b90c2dabafd… | Figures from official texts (Government Gazette notices, regulator decisions): no copyright in them under the Copyright Act, s12(8)(a). The file itself is under our terms. |
| Town to fuel-pricing zone lookup Release 2026-10-07 | fuel-zone-lookup-2026-10-07-records.parquet385 record rows, 35 kB sha256 741a7d192e06fa55… | The town list comes from National Treasury, whose copyright notice allows non-commercial informational use only; published free on that basis. The file itself is under our terms. |
| Greenness by ward Release 2026-11-12 | greenness-by-ward-2026-11-12-records.parquet52,349 record rows, 6.2 MB sha256 0a738fedef89049b… | From Digital Earth Africa's NDVI anomaly (CC BY 4.0) and the Copernicus Land Monitoring Service's NDVI (full, open and free access; source: Copernicus Land Monitoring Service). The file itself is under our terms. |
| Land cover, built-up area and population by ward Release 2026-11-12 | land-and-population-by-ward-2026-11-12-records.parquet14,277 record rows, 1.7 MB sha256 676161300e37f8b5… | From ESA WorldCover, the JRC's Global Human Settlement Layer and WorldPop, each under CC BY 4.0. The file itself is under our terms. |
| Reference interest rates and legal limits Release 2026-11-09.3 | reference-rates-2026-11-09.3-records.parquet233 record rows, 26 kB sha256 b8c0a6811b3efa87…reference-rates-2026-11-09.3-facts.parquet233 facts, 15 kB sha256 6b28b50054b4b7e4… | Figures from official texts (Government Gazette notices, regulator decisions): no copyright in them under the Copyright Act, s12(8)(a). The file itself is under our terms. |
| Toll plazas and tariffs Release 2026-11-09.2 | toll-tariffs-2026-11-09.2-records.parquet1,164 record rows, 93 kB sha256 7c148e668469875a…toll-tariffs-2026-11-09.2-facts.parquet2,392 facts, 70 kB sha256 77f6b6a0dc546a6b… | Figures from official texts (Government Gazette notices, regulator decisions): no copyright in them under the Copyright Act, s12(8)(a). Plaza positions from OpenStreetMap (ODbL 1.0, offered at https://unmapped.co.za/open#toll-plaza-locations). The file itself is under our terms. |
| Bargaining-council minimum wages Release 2026-11-10 | wage-tables-2026-11-10-records.parquet1,132 record rows, 105 kB sha256 2800503ce03e01dd…wage-tables-2026-11-10-facts.parquet1,047 facts, 52 kB sha256 f3a913dfcb020716… | Figures from official texts (Government Gazette notices, regulator decisions): no copyright in them under the Copyright Act, s12(8)(a). The file itself is under our terms. |
| Ward and municipal boundaries with history Release 2026-11-07 | ward-boundaries-2026-11-07-records.parquet9,483 record rows, 675 kB sha256 ccf279783c69b18c… | Municipal Demarcation Board boundaries, shapes simplified by us, used under the MDB's licence (acknowledge the MDB; not to be sold or passed on as the MDB's product). The file itself is under our terms. |
| Water quality by treatment works Release 2026-11-03 | water-quality-2026-11-03-records.parquet3,103 record rows, 440 kB sha256 eab13822f5f02c8e…water-quality-2026-11-03-facts.parquet54,168 facts, 2.1 MB sha256 8ee693433ca32c59… | From the Department of Water and Sanitation, a state work with no published reuse terms; kept fully open and free by the owner's decision of 10 November 2026 while permission is asked for. The file itself is under our terms. |
| Rainfall and temperature by ward Release 2026-11-05 | weather-by-ward-2026-11-05-records.parquet309,980 record rows, 34.2 MB sha256 9c0e2957119e2337… | Contains modified Copernicus Climate Change Service information (ERA5-Land, CC BY 4.0). The file itself is under our terms. |
Dam outlines
Each dam page shows the water surface measured from space, inside the dam’s full-supply outline. The Department of Water and Sanitation names each dam but gives no outline, so the outlines come from OpenStreetMap water polygons. Data © OpenStreetMap contributors, available under the ODbL 1.0.
- dam-outlines.geojson: one outline per DWS dam station, with how it was matched (ODbL 1.0)
- outline-selection.json: which OpenStreetMap polygons are each dam, and the dams left unmatched with why
- outline-match.sql, outline-match.py and outlines.py: the method (MIT licence)
- README.txt: how to rebuild it, and the licences
Places, streets and house numbers (address search)
Unmapped Search finds streets, suburbs, townships, villages and towns, and a house number on a street where OpenStreetMap has one. They come from OpenStreetMap only: Data © OpenStreetMap contributors, available under the ODbL 1.0. Nothing else is joined in. The ward and municipality a search shows are worked out when you search, from the Municipal Demarcation Board’s ward boundaries, a separate dataset that is not in these files. No personal information: no contributor names, no farms or private roads, and for a house only its number and its point, never a name, an owner or an occupant. Built 11 November 2026 from OpenStreetMap data to 31 October 2026.
How a house number is placed: each point OpenStreetMap tags with a house number goes on the named street its tag gives, the nearest stretch of a street of exactly that name within 400 m. A number with no street in its tag goes on a street only when one named street is within 40 m and no street of another name is near; otherwise it is left out (we don’t guess which street a corner house faces). Numbers that are not a plain number, such as a unit or an erf, are left out. Where a search asks for a number OpenStreetMap doesn’t have, the page places it between the nearest numbers either side, or at the middle of the street, and says so.
- osm-places-2026-10-31.ndjson.gz: 8,175 places, 0.2 MB, sha256 01171f2075bc
- osm-streets-2026-10-31.ndjson.gz: 233,961 street pieces, 10.7 MB, sha256 589dfd3a922a
- osm-houses-2026-10-31.ndjson.gz: 13,813 streets with their house numbers, 0.9 MB, sha256 93fc60e898fb
- address-osm.py: the script that makes the places and streets from the OpenStreetMap extract (MIT licence)
- address-lib.mjs: how they become the search index (MIT licence)
- address-houses.py: the script that puts each house number on its street (MIT licence)
- address-houses-lib.mjs: how the house numbers and street names become the address suggestions (MIT licence)
- houses.json: how many numbers were kept and left out, and why
- open.json: the extract it was built from (sha256), the counts and the files
- README.txt: what is in them, how to rebuild them, and the licences
Where each dam is (dams nearest a spot)
A search for a street or a town lists the dams nearest it, and a dam’s page lists the towns near it. The Department of Water and Sanitation’s weekly report names each dam but doesn’t say where it is. The positions come from OpenStreetMap: for each dam, a point inside its OpenStreetMap water outline, the outline matched to the dam by name and checked against the capacity the Department gives. A dam with no named outline in OpenStreetMap has no point, and the file lists it with the reason. Data © OpenStreetMap contributors, available under the ODbL 1.0.
- dam-points.json: each dam’s point (latitude, longitude and the area of its outline in km², by station), and the dams with none and why (ODbL 1.0)