GeoNet New Zealand API
Free GeoNet API with no key: New Zealand earthquakes with Modified Mercalli intensity, volcanic alert levels, strong-motion data and network station metadata as GeoJSON.
Endpoint tested and returned HTTP 200 on 2026-08-21
What is the GeoNet New Zealand API?
The GeoNet API is a free, key-free service from New Zealand's geological hazard monitoring programme. It returns earthquakes as GeoJSON with magnitude, depth, locality and Modified Mercalli intensity, plus volcanic alert levels, strong-motion measurements and seismic network metadata.
GeoNet is run jointly by GNS Science and New Zealand's Earthquake Commission, monitoring one of the most seismically active countries on earth. Its API stands out for reporting felt intensity rather than just magnitude: the `mmi` field is Modified Mercalli Intensity, an estimate of how strongly the earthquake was actually shaken at the surface, which is far more meaningful to the public than a magnitude number. Filtering by `MMI` is how you ask for earthquakes people noticed rather than earthquakes instruments noticed.
The API uses explicit content-type versioning — you request `application/vnd.geo+json;version=2` in the Accept header, and GeoNet can then evolve the schema without breaking existing clients. That is a rare and welcome discipline, and it means omitting the header may get you a different version than you tested against. The `quality` field is worth reading too: `best` marks a reviewed solution, while automatic solutions carry lower-quality markers and can shift once an analyst looks at them.
Quick facts
- Base URL
https://api.geonet.org.nz- Authentication
- No API key or account. GeoNet data is released under Creative Commons Attribution, with GNS Science and the Earthquake Commission credited.
- Rate limit
- No published limit. GeoNet asks for reasonable use and offers cached endpoints for high-traffic applications.
- Pricing
- Free. Data is licensed CC BY, so attribution is required on reuse.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the GeoNet New Zealand API
Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.
1. Fetch recent New Zealand earthquakes felt at MMI 3 or above
GET https://api.geonet.org.nz/quake?MMI=3
curl 'https://api.geonet.org.nz/quake?MMI=3' \
-H 'Accept: application/vnd.geo+json;version=2'const res = await fetch("https://api.geonet.org.nz/quake?MMI=3", {
headers: {
"Accept": "application/vnd.geo+json;version=2",
},
});
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
headers = {
"Accept": "application/vnd.geo+json;version=2",
}
res = requests.get("https://api.geonet.org.nz/quake?MMI=3", headers=headers, timeout=20)
res.raise_for_status()
print(res.json()){
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
168.008850098,
-44.623096466
]
},
"properties": {
"publicID": "2026p624894",
"time": "2026-08-20T05:03:36.988Z",
"depth": 62.1313362121582,
"magnitude": 3.4014593107530176,
"mmi": 3,
"locality": "5 km north-east of Milford Sound",
"quality": "best"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
174.154647827,
-41.734359741
]
},
"properties": {
"publicID": "2026p622150",
"time": "2026-08-19T04:41:40.105Z",
"depth": 10.328262329101562,
"magnitude": 3.153885148412852,
"mmi": 4,
"locality": "10 km south-east of Seddon",
"quality": "best"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
177.527832031,
-37.772033691
]
},
"properties": {
"publicID": "2026p621209",
"time": "2026-08-18T20:20:11.724Z",
"depth": 30.44742012023926,
"magnitude": 3.3677981620505415,
"mmi": 3,
"locality": "10 km west of Te Kaha",
"quality": "best"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
174.315429688,
-41.547195435
]
},
"propertParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
MMI | query | Required | Minimum Modified Mercalli Intensity, -1 to 8. Use 3 or above for earthquakes people are likely to have felt. 3 |
publicID | path segment | Optional | On `/quake/{publicID}`, fetch one specific earthquake by its GeoNet identifier. 2026p624894 |
(Accept header) | header | Required | Content-type version negotiation, e.g. `application/vnd.geo+json;version=2`. Omit it and you may get a different schema. application/vnd.geo+json;version=2 |
(endpoint) /volcano/val | path | Optional | Current Volcanic Alert Level for each New Zealand volcano. /volcano/val |
(endpoint) /intensity | path | Optional | Reported and measured shaking intensity, including public felt reports. /intensity?type=measured |
Response fields
features[].properties.publicIDstring- GeoNet event identifier, formatted as year plus a sequence such as `2026p624894`.
properties.magnitudefloat- Local magnitude, reported at full computed precision rather than rounded.
properties.mmiinteger- Modified Mercalli Intensity — estimated felt shaking, which is what determines whether an earthquake matters to people.
properties.depthfloat- Hypocentre depth in kilometres. Shallow New Zealand quakes are felt far more strongly than deep ones of the same magnitude.
properties.localitystring- Plain-language location such as `10 km south-east of Seddon` — ready to display without geocoding.
properties.qualitystring- `best` for an analyst-reviewed solution; automatic solutions are lower quality and may be revised.
properties.timestring- Origin time in UTC, ISO 8601.
What you can build with the GeoNet New Zealand API
- Show recent New Zealand earthquakes on a map
- Alert users when a quake is felt above a chosen intensity near them
- Track volcanic alert levels for New Zealand volcanoes
- Analyse the relationship between magnitude, depth and felt intensity
- Build a public hazard dashboard for a New Zealand audience
Common errors and how to fix them
400
The `MMI` parameter was missing or out of range.
Fix: `MMI` is required on the quake endpoint and must be between -1 and 8. There is no unfiltered listing.
Unexpected response shape
The Accept header was omitted or named a different version.
Fix: Send `Accept: application/vnd.geo+json;version=2` explicitly. GeoNet versions its schemas through content negotiation.
Magnitude changes between requests
Automatic solutions are revised by analysts.
Fix: Check `quality`. Treat anything other than `best` as provisional, and re-fetch by `publicID` before quoting a figure.
No results
Few earthquakes exceeded the intensity threshold recently.
Fix: Lower `MMI`. At MMI 5 and above the feed can legitimately be empty for days.
GeoNet New Zealand API — frequently asked questions
Is the GeoNet API free?
Yes, free with no key or account. The data is released under a Creative Commons Attribution licence, so you must credit GNS Science and the Earthquake Commission when you reuse it.
What is MMI and why filter on it?
Modified Mercalli Intensity estimates how strongly shaking was felt at the surface, on a scale where 3 is noticeable indoors and 6 or more causes damage. It is a better filter than magnitude because a deep magnitude 5 may be imperceptible while a shallow magnitude 4 is alarming.
Does GeoNet cover volcanoes as well as earthquakes?
Yes. The `/volcano/val` endpoint returns the current Volcanic Alert Level for each monitored New Zealand volcano, and there are further endpoints for volcanic quakes and monitoring data.
Why do I need a special Accept header?
GeoNet versions its response schemas through content negotiation rather than the URL. Naming the version you were built against — `application/vnd.geo+json;version=2` — protects you from a schema change you did not test for.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
GeoJSON Validator
Validate GeoJSON against RFC 7946 and get the exact JSON path of every problem: unclosed rings, swapped coordinates, missing properties and more.
GeoJSON to CSV Converter
Flatten a GeoJSON FeatureCollection into a CSV table with one row per feature, a centroid for lines and polygons, and every property as a column.
GeoNet New Zealand is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.