Insitive · Developer portal

Inspect your api.insitive.com.au API key, scopes, and usage.

Your API key

Paste your key — it stays in this browser and is sent only to api.insitive.com.au.

Stable property identifiers

Every property dataset shares one identifier contract: the G-NAF address PID (gnaf_pid, e.g. GAVIC421234567) and the cadastral parcel identifier (parcel_pfi) scoped by state. Resolve them once via /v1/property/resolve, /api/cadastre/by-address or /api/cadastre/lookup, then reuse them across datasets — point-based endpoints (risk, demographics, development applications) also accept ?pfi=&state= in place of lat/lng and echo the resolved identifiers back in an optional property block.

Identifiers are stable across releases; coordinates are not — store gnaf_pid / parcel_pfi+state as your keys.

Property graph & risk summary

GET /v1/property/graph resolves a property once and fans out to every data layer — cadastre, planning, hazards, development applications, demographics, market trends, building footprints, easements, roads and land values — in a single response. Each layer carries its own status (ok / no_data / not_covered / skipped / error), so a gap or outage in one layer never fails the whole call. Per-layer access follows your key’s scopes: request the graph with property-graph.read and it includes exactly the layers you’re entitled to.

GET /v1/risk-summary (scope risk.summary.read) combines flood, bushfire (BAL) and contamination into one read, with severity, coverage and freshness per hazard — coverage flags distinguish “clear” from “not yet mapped” so a blank is never mistaken for a green light.

Both accept ?pfi=&state= or ?gnaf_pid= in place of lat/lng, and every layer ships source attribution and open-data licence in the body plus the X-Insitive-Attribution and X-Insitive-License response headers — so you can always cite where a number came from.

Suburb analytics

GET /v1/suburb-analytics/bundle?state=&suburb= (scope suburb-analytics.read) returns the precomputed intelligence bundle for one suburb — median sale prices and 1/3/5-year growth, median weekly rents and gross yields, rental-bond volume trend, building approvals and supply pipeline, development-application activity, Census 2021 demographics, amenity counts, livability score and hazard-overlay land shares.

Prefer path-style reads? The same data is served (same suburb-analytics.read scope) as a per-state listing and a per-suburb bundle — for example GET /v1/suburb-analytics/VIC lists every computed suburb in Victoria (paged via ?limit=&offset=), and GET /v1/suburb-analytics/VIC/richmond returns Richmond’s full bundle (suburb names are case-insensitive; URL-encode spaces, e.g. /v1/suburb-analytics/VIC/box%20hill%20north).

GET /v1/suburb-analytics/timeseries?state=&suburb=&metric= serves the full series behind each headline number — prices, rents, approvals or bonds — and GET /v1/suburb-analytics/screen screens suburbs across a state with numeric range filters (<metric>_min / <metric>_max, e.g. gross_yield_house_pct_min=4&median_house_price_max=900000), ordered and paged up to 100 rows.

Licensed market metrics (vacancy rate, days on market, stock on market, sales volume, buyer demand) are served as an explicit licensed_metrics block of { value, status } pairs — not_yet_available until a licensed feed switches on, so your integration’s contract never changes. Every response carries source attribution in the body and headers.

Walkable catchment

GET /v1/catchment/walking?lat=&lng=&minutes= (scope catchment.read) computes the true walkable area within 5, 10 or 15 minutes of a point by traversing Insitive’s self-hosted road-centreline network — a real network isochrone, not a straight-line radius. The response carries the catchment polygon (GeoJSON) plus every amenity inside it (schools, childcare, transport, retail, recreation, cafes, hospitals) with its network walking distance and time.

Where road data is sparse or missing the result degrades to a straight-line buffer flagged approximate: true with a reason — never a hard failure for coverage reasons. An optional state= hint overrides coordinate-based state detection. Every response carries source attribution (state road centrelines CC BY; OpenStreetMap amenities ODbL) in the body and headers.

Land supply (land for sale)

GET /v1/land-supply/estates/nearby?lat=&lng=&radius_km= and GET /v1/land-supply/lots/nearby?lat=&lng=&radius_km=&available=1 (scope land-supply.read) return the active land estates and the individual lots for sale around a point from Insitive’s weekly national new-land mirror — asking prices, lot dimensions (area, frontage, depth), title status, sales status, geocoded locations and the parent estate with its developer and per-estate active/available lot rollups. Each lot also carries aspect — the standardised FRONT→REAR compass direction of the lot (16-point code; "N" = rear yard faces north) — with aspect_source provenance (geometry, plan-compass or text-flip); both are null when no tier could derive it. The same attributes, including aspect/aspect_source, ride on every feature of the lot vector tiles at GET /api/land-supply/lots/tiles/{z}/{x}/{y}.

GET /v1/land-supply/suburb/{state}/{suburb}?weeks= returns the weekly land-market series for a suburb — active/available lots (supply), lots first seen (new supply), lots sold or delisted (consumption) and the median asking price — plus the state-grain series for context and the estates currently selling there. Every response carries the listing-data attribution in the body and headers.

The same weekly series is served at every grain: GET /v1/land-supply/estate/{estateId}?weeks= for one estate (with the estate identity and live lot rollups), GET /v1/land-supply/state/{state}?weeks= for a whole state, and GET /v1/land-supply/states for the national overview — the latest week’s rollup for every covered state in one call.

Market intelligence (product bundle)

Market Intelligence packages Insitive’s market-data layers as one coherent product — it is a scope bundle, not a separate endpoint family. A key provisioned for Market Intelligence carries five scopes and unlocks four surfaces that share identifiers (state + suburb, LGA codes, coordinates) so they compose cleanly:

Suburb analytics (suburb-analytics.read) — the per-suburb intelligence bundle, per-metric time series and cross-state screening under /v1/suburb-analytics/*. Suburb trends (locality.suburb) — quarterly median price/rent series and related market reads under /api/suburb-trends/*. Land supply (land-supply.read) — land-for-sale estates/lots near a point plus weekly supply series at estate, suburb, state and national grain under /v1/land-supply/*. Development applications (development-applications.read + development-applications.feed.read) — DA lookups and statistics near a point or by LGA, and the incremental change feed for syncing DA activity into your own store.

Typical composition: screen suburbs with /v1/suburb-analytics/screen, pull each shortlisted suburb’s bundle + price/rent series, overlay weekly land-supply and DA activity for the same suburb, then poll the DA feed for changes. All five scopes are included in the Growth tier; each response carries per-source attribution you must reproduce when redistributing.

Planning provisions, envelope by address & DA feed

GET /v1/planning-provisions?lat=&lng= (scope planning.provisions.read) returns the structured planning-schedule rules that apply at a point — front/side/rear setbacks, site coverage, height and storey limits, wall-on-boundary allowances — with full provenance (regulation reference, per-boundary applied rules) and an explicit conservative_fallback flag so you always know whether a number is a published control or a conservative default. Also accepts ?state=&pfi=, plus optional lot characteristics (lot_area_m2, frontage_m, …) for parametric schedules.

GET /v1/envelope-by-address?address= (scope envelope.by-address.read) is the one-call pipeline: free-form address → G-NAF point → cadastral parcel → full building envelope. The response reports each stage’s provenance, and failures are per-stage — a distinct status code plus stage and retryable fields tell you exactly where resolution stopped (unmatched address, no parcel, upstream cadastre outage, envelope formula gap).

GET /v1/development-applications/feed?lga_code= or ?bbox=minLng,minLat,maxLng,maxLat (span ≤ 2°, scope development-applications.feed.read) is a polling change feed of development applications — filter with updated_since and page with the opaque keyset cursor (up to 200 rows per page) instead of re-downloading whole regions. Every page carries per-state source credits you must reproduce when redistributing records.

Data-layer add-ons

Any individual data layer can be added to a paid tier as a priced add-on. Each add-on maps 1:1 to a scope group on your key. Paste your live key above and buy directly — checkout is handled by Stripe and the scopes activate on your key as soon as payment completes (monthly prices in AUD, ex GST). Prefer an invoice? Contact support@insitive.com.au.

Risk Summary — $99/month, 10,000 calls / month (scope group risk). Per-property flood, bushfire (BAL) and contamination in one read — with severity and an explicit coverage flag per hazard, so "no overlay" is never mistaken for "not checked". Coverage: Statewide in VIC, NSW, WA and TAS; ACT and NT cover flood + bushfire (no contamination register). QLD is per-council (Brisbane, Gold Coast, Sunshine Coast, Moreton Bay, Logan, Ipswich, Toowoomba, Rockhampton, Townsville, Cairns, Mackay). SA is not yet covered. Uncovered areas return coverage: "not_covered" — never a clear result.
Property Graph — $199/month, 10,000 calls / month (scope group property-graph). One call resolves a property and fans out to every data layer your key is scoped for — cadastre, planning, hazards, DAs, demographics, market trends, footprints, easements, roads, land values. Coverage: Per-layer coverage varies by state; each layer in the response carries its own status and coverage flag.
DA Tracker — $79/month, 10,000 calls / month (scope group development-applications). Development applications near a point or within an area, refreshed nightly from council and state portals, deduplicated per state. Coverage: Six of eight states live; QLD and WA coverage is partial (per-council sources).
Suburb Trends — $59/month, 10,000 calls / month (scope group locality). Suburb-level market signal — median prices, median rents and trend series — plus proximity context (schools and amenities) for any address. Coverage: Median price and rent series currently cover VIC and NSW suburbs.
Planning Envelope — $129/month, 5,000 calls / month (scope group envelope). Buildable-envelope computation from zoning, FSR, height and setback provisions — plus shadow analysis — for any residential lot. Coverage: Setback provisions are seeded per state; lots without a scheme-specific rule fall back to a clearly flagged conservative default.
Cadastre & Address — $49/month, 20,000 calls / month (scope groups geocode, cadastre). G-NAF address resolution and cadastral parcel lookup (boundary, lot/plan, area) across all eight states and territories — the identifier backbone for every other layer.