New Zealand Company Registry API and MCP — Directors, Shareholders & Addresses
Send a New Zealand company number or a link to the Companies Register record and get the company back as structured data: name, status, NZBN, company type, incorporation date, registered office and address for service, directors, shareholders, previous names and the ultimate holding company.
- You send
- A New Zealand company number or the link to the Companies Register record
- You get back
- Name, status, registration date, addresses, directors, shareholders, previous names and the ultimate holding company
- Coverage
- New Zealand — entities on Companies Register.
- Price
- 5 pts — $5 per 1,000
- Charged only when the record resolves. A lookup that finds nothing is not billed.
Ways to get this data
Three approaches teams use today, and where each one runs into trouble.
| Approach | What it takes | Cost | Trade-off |
|---|---|---|---|
| Companies Register directly | Open Companies Register and read the record | Usually free, sometimes per-document | A different interface, language and data shape for every country you add |
| Collecting it yourself | Build and host a crawler per register, then keep each one alive | Infrastructure and maintenance | Registers change their pages without warning, and nobody is on the hook when yours breaks |
| NeuralVerge | One request, the same shape as every other source in the catalog | $5 per 1,000, misses not billed | Covers New Zealand — other countries are separate sources with the same request format |
What you get back
Every field in the example response below.
| Field | Type | Description |
|---|---|---|
session_id | string | Identifier of this run. Keep it to trace the call. |
kind | string | Source that produced the response. |
company | string | The identifier you sent. |
company_id | string | The identifier the source resolved it to. |
human | string | Readable summary of the record in Markdown. |
machine | object | The structured result. |
machine.company | object | The company record. |
machine.company.registration_number | string | The New Zealand company number. |
machine.company.nzbn | string | New Zealand Business Number, thirteen digits. |
machine.company.name | string | Registered company name. |
machine.company.status | string | Company status, for example Registered. |
machine.company.address | string | Registered office as one line. |
machine.company.company_type | string | Company type, for example NZ Limited Company. |
machine.company.incorporation_date | string | Incorporation date, as YYYY-MM-DD. |
machine.company.previous_names | array | Earlier names, each with from and to dates. |
machine.company.previous_statuses | array | Earlier statuses. Empty list in the sample. |
machine.company.constitution_filed | boolean | Whether a constitution is on file. |
machine.company.ar_filing_month | string | Month the annual return is due. |
machine.company.ar_last_filed | string | Date the last annual return was filed. |
machine.company.fra_reporting_month | null | Financial reporting month. Empty in the sample. Null in the sample response, so the type is not shown there. |
machine.company.ultimate_holding_company | object | The company at the top of the ownership chain, with its name, number, entity type and NZBN. |
machine.company.ultimate_holding_company.name | string | Name of the ultimate holding company. |
machine.company.ultimate_holding_company.company_number | string | Company number of the ultimate holding company. |
machine.company.ultimate_holding_company.entity_type | string | Entity type of the ultimate holding company. |
machine.company.ultimate_holding_company.nzbn | string | NZBN of the ultimate holding company. |
machine.company.ultimate_holding_company.country | string | Country of the ultimate holding company. |
machine.company.registered_office_address | string | Registered office address. |
machine.company.address_for_service | string | Address for service. |
machine.company.address_history | array | Address records with type, address, dates and a current flag. |
machine.company.directors | array | Directors, with name, residential address, appointment and cessation dates and a current flag. |
machine.company.directors[].residential_address | string | Residential address; returned as [redacted]. |
machine.company.directors[].appointed | string | Date of appointment. |
machine.company.directors[].ceased | null | Date of cessation. Empty for a current director. Null in the sample response, so the type is not shown there. |
machine.company.directors[].current | boolean | Whether the director is current. |
machine.company.directors_total | number | Number of directors. |
machine.company.total_shares | number | Total number of shares. |
machine.company.extensive_shareholding | boolean | Whether the company reports extensive shareholding. |
machine.company.shareholders | array | Share allocations, each with share count, percentage and its holders. |
machine.company.shareholders[].holders | array | Holders of the allocation, with name, company number and address. |
machine.company.nzbn_details | object | Business details attached to the NZBN, such as GST number, phone, email, website and trading names. All empty lists or empty values in the sample. |
machine.company.documents_total | number | Number of documents filed. |
machine.company.insolvency_notes | null | Insolvency notes. Empty in the sample. Null in the sample response, so the type is not shown there. |
machine.company.last_updated | string | Date the record was last updated. |
machine.company.url | string | Link to the Companies Register record. |
machine.company.detail_url | string | Link to the detail page. |
machine.blocked | boolean | Whether the register refused the read. False in the sample. |
machine.pages_opened | number | Number of register pages read for the run. |
machine.proxy_traffic_bytes | number | Traffic used by the run, in bytes. Informational. |
total_points | number | Points charged for the run. |
Example response
A real response, as returned.
{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "nz_companies",
"company": "1157956",
"company_id": "1157956",
"human": "# New Zealand — Companies Register — company\n\n- **Number:** 1157956\n- **Pages opened:** 2\n- **Proxy traffic:** 539.2 KB\n- **Name:** FONTERRA TM LIMITED\n- **Status:** Registered\n- **Type:** NZ Limited Company\n- **Registered:** 2001-08-21\n- **Address:** 109 Fanshawe Street, Auckland, 1010, New Zealand",
"machine": {
"company": {
"registration_number": "1157956",
"nzbn": "9429036794195",
"name": "FONTERRA TM LIMITED",
"status": "Registered",
"address": "109 Fanshawe Street, Auckland, 1010, New Zealand",
"company_type": "NZ Limited Company",
"incorporation_date": "2001-08-21",
"previous_names": [
{
"name": "FONTERRA BRANDS LIMITED",
"from": "2001-08-21",
"to": "2005-03-10"
}
],
"previous_statuses": [],
"constitution_filed": false,
"ar_filing_month": "June",
"ar_last_filed": "2026-06-24",
"fra_reporting_month": null,
"ultimate_holding_company": {
"name": "FONTERRA CO-OPERATIVE GROUP LIMITED",
"company_number": "1166320",
"entity_type": "NZ Co-operative Company",
"registration_number": "1166320",
"nzbn": "9429036748471",
"country": "New Zealand",
"registered_office_address": null
},
"registered_office_address": "109 Fanshawe Street, Auckland, 1010, New Zealand",
"address_for_service": "109 Fanshawe Street, Auckland, 1010, New Zealand",
"address_history": [
{
"type": "registered_office",
"address": "109 Fanshawe Street, Auckland, 1010, New Zealand",
"from": null,
"to": null,
"current": true
},
{
"type": "address_for_service",
"address": "109 Fanshawe Street, Auckland, 1010, New Zealand",
"from": null,
"to": null,
"current": true
}
],
"directors": [
{
"name": "David Jeremy Verity GRIFFITHS",
"residential_address": "[redacted]",
"appointed": "2026-01-30",
"ceased": null,
"current": true,
"australian_company_director": null,
"australian_company": null
},
{
"name": "Selena Jayne REID",
"residential_address": "[redacted]",
"appointed": "2023-10-06",
"ceased": null,
"current": true,
"australian_company_director": null,
"australian_company": null
}
],
"directors_total": 2,
"total_shares": 100,
"extensive_shareholding": false,
"shareholders": [
{
"allocation": 1,
"shares": 100,
"percent": 100,
"holders": [
{
"name": "FONTERRA EQUITIES LIMITED",
"company_number": "113532",
"address": "109 Fanshawe Street, Auckland Central, Auckland, 1010, New Zealand"
}
]
}
],
"nzbn_details": {
"gst_number": [],
"australian_business_number": [],
"phone_number": [],
"email_address": [],
"office_address": null,
"delivery_address": null,
"postal_address": null,
"invoice_address": null,
"trading_name": [],
"website": [],
"trading_area": [],
"industry_classification": []
},
"documents_total": 76,
"insolvency_notes": null,
"last_updated": "2026-06-24",
"url": "https://app.companiesoffice.govt.nz/co/1157956",
"detail_url": "https://app.companiesoffice.govt.nz/companies/app/ui/pages/companies/1157956/detail"
},
"blocked": false,
"pages_opened": 2,
"proxy_traffic_bytes": 552097
},
"total_points": 5
}How to run it
The same lookup works from the app, the API, or as a tool an agent can call mid-task.
One company per request. Pass the registration number or the link to the record on the register.
curl -X POST https://api.neuralverge.ai/functions/v1/run-nz-companies \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"company":"1157956"}'What teams use it for
Where this field shows up in an actual workflow.
Confirm who the directors and shareholders of a New Zealand company are.
Follow shareholders and the ultimate holding company up a group.
Use the annual return month and last filed date to see whether a company keeps up with its filings.
Match a company across systems by company number and NZBN.
Coverage, freshness and limits
What this source covers, how fresh it is, and where it stops.
New Zealand — entities on Companies Register.
Read at request time, so the answer reflects the register as it stands when you ask.
Companies Register is a public register. Every response carries the source URL it was read from and a session id you can trace.
- —Directors' residential addresses are returned as [redacted].
- —nzbn_details came back empty for the sample company, so contact details are not always there.
- —The record shows directors and shareholders as the register lists them; the register is the limit on how far back it goes.
Questions, answered
Yes. directors and shareholders are part of the record, with appointment dates, share counts and percentages.
Related sources
Try new zealand company on your own data
One request format across every source in the catalog.