NSW LRS Historical Land Records Viewer Document Search API

An Elasticsearch search proxy that backs the Historical Land Records Viewer and answers anonymously. Verified on 2026-07-26: POST https://api.lrsnative.com.au/hlrv/documents/_msearch with an ndjson body of {"preference":"probe"} plus {"query":{"match_all":{}},"size":2} returned HTTP 200 with Content-Type application/json and hits.total 7160622 across three shards, with no credential of any kind supplied. The HLRV single-page app configures the ReactiveSearch client with ELASTIC_SEARCH_HOST https://api.lrsnative.com.au, INDEX_NAME hlrv/documents and an x-portal-token header, but that header is not enforced on _msearch. Returned documents carry collectionId, collectionName (for example "General Register of Deeds (Old System Deeds)"), documentId, documentRenderingId, imageType, imageName, bookAndNumber, scanTimestamp and an images array of JPEG2000 files with fileName, location, imageId, imageStatus, seqNo and pixel dimensions — the exact fields needed to build IIIF identifiers. Sibling routes are not open: GET /hlrv/documents returned HTTP 503, POST /hlrv/documents/_search returned HTTP 400 with {"message":"Invalid Request: TypeError: query.includes is not a function"}, and POST /hlrv/lotsearch/search returned HTTP 500. There is no published contract, no documentation, no versioning and no terms permitting programmatic use; HLRV clause 3.6 prohibits using "any device, software or routine to abuse the service of HLRV or emulate human interaction and operation" and clause 2.1 prohibits on-supply, republishing and data aggregation. Recorded here as an observed, reachable surface, not as an offered developer product.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/nsw-lrs-hlrv-document-search-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

API entry from apis.yml

apis.yml Raw ↑
aid: nsw-land-registry:nsw-lrs-hlrv-document-search-api
name: NSW LRS Historical Land Records Viewer Document Search API
description: 'An Elasticsearch search proxy that backs the Historical Land Records Viewer and answers
  anonymously. Verified on 2026-07-26: POST https://api.lrsnative.com.au/hlrv/documents/_msearch with
  an ndjson body of {"preference":"probe"} plus {"query":{"match_all":{}},"size":2} returned HTTP 200
  with Content-Type application/json and hits.total 7160622 across three shards, with no credential of
  any kind supplied. The HLRV single-page app configures the ReactiveSearch client with ELASTIC_SEARCH_HOST
  https://api.lrsnative.com.au, INDEX_NAME hlrv/documents and an x-portal-token header, but that header
  is not enforced on _msearch. Returned documents carry collectionId, collectionName (for example "General
  Register of Deeds (Old System Deeds)"), documentId, documentRenderingId, imageType, imageName, bookAndNumber,
  scanTimestamp and an images array of JPEG2000 files with fileName, location, imageId, imageStatus, seqNo
  and pixel dimensions — the exact fields needed to build IIIF identifiers. Sibling routes are not open:
  GET /hlrv/documents returned HTTP 503, POST /hlrv/documents/_search returned HTTP 400 with {"message":"Invalid
  Request: TypeError: query.includes is not a function"}, and POST /hlrv/lotsearch/search returned HTTP
  500. There is no published contract, no documentation, no versioning and no terms permitting programmatic
  use; HLRV clause 3.6 prohibits using "any device, software or routine to abuse the service of HLRV or
  emulate human interaction and operation" and clause 2.1 prohibits on-supply, republishing and data aggregation.
  Recorded here as an observed, reachable surface, not as an offered developer product.'
humanURL: https://hlrv.nswlrs.com.au/
baseURL: https://api.lrsnative.com.au/hlrv/documents
tags:
- Land Registry
- Historical Records
- Search
- Elasticsearch
- Australia
properties:
- type: Documentation
  url: https://hlrv.nswlrs.com.au/
- type: Documentation
  url: https://nswlrs.com.au/services/record-searches/how-to-find-a-record
- type: TermsOfService
  url: https://nswlrs.com.au/about-us/policies/terms-conditions
- type: Examples
  url: examples/nsw-land-registry-hlrv-msearch-response.json