Discover/NZX API
live

NZX APInzx.com

Access daily OHLC prices, trading volume, company listings, and instrument details for NZX-listed stocks via a structured JSON API.

Endpoint health
verified 3d ago
get_instrument_details
get_daily_price_volume
list_companies
3/3 passing latest checkself-healing
Endpoints
3
Updated
26d ago

What is the NZX API?

The NZX API provides access to New Zealand Exchange market data across 3 endpoints, covering daily OHLC price and volume history, a full company directory, and per-instrument details. The get_daily_price_volume endpoint returns up to 2 years of trading day records — including open, high, low, close, volume, value, and trade count — for any NZX-listed ticker code such as AIR, FPH, or FBU.

Try it
NZX stock ticker code (e.g. MHJ, AIR, FPH, FBU)
api.parse.bot/scraper/7392557d-d880-428c-a870-0c3c60653fd3/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/7392557d-d880-428c-a870-0c3c60653fd3/get_daily_price_volume?code=AIR' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace nzx-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: NZX SDK — list companies, fetch price/volume data, inspect instruments."""
from parse_apis.nzx_daily_price_volume_api import NZX, InstrumentNotFound

client = NZX()

# List all NZX-listed companies (bounded iteration).
for company in client.companies.list(limit=5):
    print(company.code, company.short_name, company.listing_status)

# Drill into one company's daily price & volume data.
air = client.companies.get(code="AIR")
pv = air.price_volume()
print(pv.name, pv.isin, pv.currency, f"{pv.total_days} trading days")

# Inspect the most recent daily record.
for record in pv.daily_data[:3]:
    print(record.date, record.close, record.volume, record.capitalisation)

# Get instrument details for a company.
details = air.instruments()
for inst in details.instruments:
    print(inst.isin, inst.name, inst.market_type, inst.shares_issued)

# Typed error handling: attempt to look up a non-existent ticker.
try:
    client.companies.get(code="ZZZZZ")
except InstrumentNotFound as exc:
    print(f"Not found: {exc.code}")

print("exercised: companies.list / companies.get / price_volume / instruments / InstrumentNotFound")
All endpoints · 3 totalmissing one? ·

Get daily price and volume data for an NZX-listed stock. Returns up to 2 years of merged OHLC price data and trading volume/value for every trading day, sorted newest first. Each record includes open, high, low, close, market_price, volume, value, trade_count, on/off market volume, and capitalisation. The code is resolved to an ISIN internally before fetching metrics.

Input
ParamTypeDescription
coderequiredstringNZX stock ticker code (e.g. MHJ, AIR, FPH, FBU)
Response
{
  "type": "object",
  "fields": {
    "code": "string - Stock ticker code",
    "isin": "string - International Securities Identification Number",
    "name": "string - Full instrument name",
    "period": "string - Data period (2Y)",
    "currency": "string - Currency code (e.g. NZD)",
    "daily_data": "array - Daily records sorted newest first, each with date, open, high, low, close, market_price, volume, value, trade_count, on_market_volume, off_market_volume, capitalisation",
    "total_days": "integer - Number of trading days returned"
  },
  "sample": {
    "data": {
      "code": "AIR",
      "isin": "NZAIRE0001S2",
      "name": "Air New Zealand Limited (NS) Ordinary Shares",
      "period": "2Y",
      "currency": "NZD",
      "daily_data": [
        {
          "low": null,
          "date": "2026-06-10",
          "high": null,
          "open": null,
          "close": null,
          "value": 0,
          "volume": 0,
          "trade_count": 0,
          "market_price": 0.425,
          "capitalisation": 1374263864.025,
          "on_market_volume": 0,
          "off_market_volume": 0
        },
        {
          "low": 0.425,
          "date": "2026-06-09",
          "high": 0.435,
          "open": 0.435,
          "close": 0.425,
          "value": 200722.53,
          "volume": 465782,
          "trade_count": 254,
          "market_price": 0.425,
          "capitalisation": 1374263864.025,
          "on_market_volume": 449996,
          "off_market_volume": 15786
        }
      ],
      "total_days": 502
    },
    "status": "success"
  }
}

About the NZX API

Daily Price and Volume History

The get_daily_price_volume endpoint accepts an NZX ticker code (e.g. MHJ, AIR, FPH) and returns a daily_data array sorted newest first. Each record includes date, open, high, low, close, market_price, volume, value, trade_count, and on_ma. The response also carries top-level fields: isin, name, currency, period (fixed at 2Y), and total_days — the number of trading days in the returned dataset.

Company Directory

The list_companies endpoint requires no inputs and returns every NZX-listed company as an array. Each company object includes code, short_name, registered_name, listing_status, and first_listed. The total field gives the count of companies in the response. Results are sorted alphabetically by ticker code, making it straightforward to iterate over the full exchange.

Instrument Details

The get_instrument_details endpoint takes a ticker code and returns an instruments array. Each instrument record includes isin, code, name, security_class, market_type, category, currency_code, shares_issued, and first_listed. A single ticker can map to multiple instrument entries where different security classes exist for the same issuer.

Coverage and Data Currency

All data covers instruments listed on the NZX. Price history extends back up to two years from the current date. The currency field in both price and instrument responses is typically NZD, though some instruments may carry different designations.

Reliability & maintenanceVerified

The NZX API is a managed, monitored endpoint for nzx.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when nzx.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official nzx.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a historical price chart for any NZX stock using up to 2 years of daily OHLC data from get_daily_price_volume.
  • Screen NZX-listed companies by listing_status using the full directory from list_companies.
  • Calculate daily trading volume trends and value turnover for NZX equities using volume and value fields.
  • Enrich a portfolio tracker with isin, shares_issued, and security_class from get_instrument_details.
  • Identify newly listed companies on the NZX by sorting the first_listed field returned by list_companies.
  • Cross-reference NZX instruments with global securities databases using the isin field.
  • Monitor average trade size per session by dividing value by trade_count in the daily records.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does NZX provide an official developer API?+
NZX does not publish a public developer API. Market data services from NZX are available only through licensed commercial data vendors, not through a freely accessible programmatic interface.
What does `get_daily_price_volume` return beyond OHLC prices?+
Each daily record includes volume (shares traded), value (dollar value of trades), trade_count (number of individual transactions), market_price, and on_ma in addition to the standard open, high, low, and close fields. The response also includes the instrument's isin, name, and currency at the top level.
Can I retrieve intraday price data or real-time quotes through this API?+
Not currently. The API returns end-of-day data only, with one record per trading day going back up to two years. You can fork this API on Parse and revise it to add an intraday or real-time quotes endpoint if the underlying source exposes that data.
Does the API cover NZX derivatives, bonds, or funds — or only equities?+
The endpoints cover instruments accessible via NZX ticker codes, which may include managed funds and ETFs depending on what get_instrument_details returns for a given code. Dedicated coverage of NZX-listed bonds or derivatives is not currently guaranteed. You can fork this API on Parse and revise it to add endpoints targeting those instrument categories.
Is there pagination for `list_companies`?+
The list_companies endpoint returns all listed companies in a single response along with a total count. There are no pagination parameters — the full directory is delivered at once.
Page content last updated . Spec covers 3 endpoints from nzx.com.
Related APIs in FinanceSee all →
nyse.com API
nyse.com API
asx.com.au API
Access Australian Securities Exchange (ASX) market data, including equity prices, index summaries, company details, market announcements, and company directory listings. Retrieve upcoming IPO and float information alongside comprehensive data on all ASX-listed companies.
nepalstock.com.np API
Access real-time stock prices, market indices, and trading data from Nepal's stock exchange (NEPSE). Retrieve live price updates, market summaries, top performers, and detailed information on listed securities.
marketindex.com.au API
Track ASX stock market data including company information, stock prices, dividends, director transactions, and sector performance. Search for stocks, monitor upcoming dividends, view market announcements, and analyze investment opportunities across the Australian securities exchange.
alphavantage.co API
Track stock prices, forex rates, and cryptocurrency values with real-time and historical market data, while accessing company financials, earnings reports, and technical indicators. Search tickers, monitor economic indicators, analyze news sentiment, and get global quotes all in one place.
stockanalysis.com API
Access comprehensive stock market data including real-time financials, income statements, statistics, and IPO calendars to research individual stocks and identify market movers. Search stocks, view detailed overviews, and monitor premarket activity all in structured, easy-to-use format.
sharesansar.com API
Access real-time Nepali stock prices, browse company information, and read the latest market news all in one place. Stay informed about the Nepal stock market with current pricing data and detailed news articles.
nasdaq.com API
Track real-time and historical stock prices, ETF and mutual fund quotes, cryptocurrency data, and comprehensive company financials including earnings, dividends, and SEC filings all from one source. Research market trends with institutional holdings, short interest data, retail trading activity, and market movers to make informed investment decisions.