Get GoodSort API v1

Read-only current Australian NBN comparison data backed by the same validated GoodSort publication and query layer as the website and MCP.

Scope: general-market comparison only. Availability varies by address and NBN technology; check with the provider before signing up.

Endpoints

Example

https://getgoodsort.com/api/v1/nbn/plans?tier=100&max_ongoing_price=100&sort=first_year_cost_asc&limit=10

Responses use goodsort.agent.v1, preserve provenance/freshness/uncertainty, and distinguish unknown/source-gated/withheld states from confirmed absence. Data responses are short-cacheable and expose data-date/generated-at headers. Public data endpoints are rate limited per serving process.

Comparison parameters

type: same_tier (default), faster, cheapest_first_year, cheapest_ongoing. Same-tier/faster require current_tier and current_monthly_price. threshold defaults to 10: same-tier accepts any or 10/20/30/40/50; faster accepts 10/20/30/40/50. Invalid thresholds return an unevaluable comparison with INVALID_THRESHOLD. current_plan_id optionally excludes that plan from same-tier only; tier filters cheapest modes. Comparison limit is 1–50, default 20.

Price and evidence semantics

Prices are AUD; intro/ongoing are AUD/month and introMonths is months. Null setup means unknown, not free. Read first12 with costCompleteness. Nominal tier/nominalUpload differ from provider-published typicalDown/typicalUp (Mbps). citationUrl is a public history page, not a private evidence URL. Stale, withheld and unknown are not confirmed absence or premises eligibility.

OpenAPI and MCP share the response schemas for discovery, search and comparison. A valid zero-result response is 200; invalid queries are 400, rate limits 429, and unavailable data 503. History endpoints are not live.