You need Australian real estate data in your app this week: recent sales, listings by region, and a clean way to drill into a single property’s details. By the end of this guide, you’ll make your first authenticated request to the Australia Realty API on Zyla API Hub, read the JSON response, and be ready to wire up search, pagination, and detail views in your codebase.
What the Australia Realty API provides
The Australia Realty API aggregates property data across Australian regions. It exposes:
- Property list results for a specified location, channel (e.g., sold), and optional sorting/pagination.
- Property detail data by a specific property ID.
- Autocomplete suggestions to help users find valid regions, suburbs, and postcodes.
Common use cases include market activity dashboards, buyer/seller apps that need sold history and agent contacts, and internal tools to validate location inputs with autocomplete.
You call it with a single Authorization header and a clear set of query parameters. Responses include both high-level query metadata (like total result counts) and tiered results you can map into cards, tables, or detail pages.
Getting started on Zyla API Hub
Open the Australia Realty API page on Zyla API Hub and subscribe to get your key: Australia Realty API on Zyla. Zyla uses subscription + quota (not pay-per-call). For this API, there’s a 7-day trial or 50 requests, and there is no free plan. Check the API page for current access options and pricing.
Once you click Subscribe or Start Free Trial (when available), copy your API key. You’ll use it in the Authorization header as: Authorization: Bearer YOUR_API_KEY.
If you do not yet have a Zyla account, you can create one here: Register. You can also explore the broader marketplace anytime at zylalabs.com.
Endpoint 1: Get Properties List
Use this to retrieve properties for a specific location, with channel and optional sorting/pagination. This is typically your “search results” or “browse” page feed.
- Method: GET
- URL: https://zylalabs.com/api/1476/australia-realty-api/1221/get-properties-list
- Description: List properties with options and filters
- Request parameters (only those documented):
- pageSize (string, optional): 50
- channel (string, required): sold
- searchLocation (string, required): Sunshine Coast, QLD
- searchLocationSubtext (string, required): Region
- type (string, required): region
- page (string, optional): 2
- sortType (string, optional): new-desc
Pagination note: If the page field returns a value of 50, that is the highest available page number. Respect this cap when iterating pages.
Image note: You must indicate the format in the URL of images (e.g., 170x32, 160x30, 114x21, 1536x800). The response includes image servers and URIs; construct full-size URLs by prepending the desired image size path as needed.
First request (cURL)
curl -s -X GET "https://zylalabs.com/api/1476/australia-realty-api/1221/get-properties-list?pageSize=50&channel=sold&searchLocation=Sunshine+Coast%2C+QLD&searchLocationSubtext=Region&type=region&page=2&sortType=new-desc" \
-H "Authorization: Bearer YOUR_API_KEY"
This query asks for sold properties in the “Sunshine Coast, QLD” region, page 2, with new-desc sorting and a pageSize of 50.
Sample JSON response
{
"prettyUrl": "/sold/in-sunshine+coast%2c+qld/list-2?activeSort=list-date",
"totalResultsCount": 162134,
"resolvedLocalities": [
{
"display": "Sunshine Coast, QLD",
"precision": "region",
"atlasId": "9280a900-d539-4e0c-9385-9590315c4cb5",
"state": "QLD"
}
],
"resolvedQuery": {
"localities": [
{
"locality": "Sunshine Coast",
"subdivision": "QLD",
"searchLocation": "Sunshine Coast, QLD"
}
],
"sortType": "new-desc",
"channel": "sold",
"pageSize": "30",
"page": "2",
"filters": {
"surroundingSuburbs": true
}
},
"tieredResults": [
{
"tier": 1,
"count": 30,
"results": [
{
"prettyUrl": "property-unit-qld-mudjimba-122053054",
"standard": true,
"midtier": false,
"lister": {
"mobilePhoneNumber": "0402972763",
"website": "http://www.bluemoonproperty.com.au",
"phoneNumber": "0402972763",
"powerProfile": false,
"jobTitle": "Sales Consultant",
"name": "Beatrice Borns",
"mainPhoto": {
"server": "https://i3.au.reastatic.net",
"name": "main photo",
"uri": "/ca783e0f628a14ff14b48ea8e53a7432f9c5b8f5676004cc2f8fecbfdc27ca95/main.jpg"
},
"id": "1405426",
"email": "[email protected]"
},
"featured": false,
"signature": false,
"constructionStatus": "established",
"channel": "sold",
"description": "Why pay a fortune for holidays when you can own your own piece of Resort-style living on the beautiful Sunshine Coast.<br/>Take use of the pool, 2 tennis courts, putting green, BBQ Area by the River and separate play ground for the children.<br/><br/>This 3 bedroom Townhouse is situated in the Pet Friendly gated and secure Resort just a short 2km from the beautiful Mudjimba Beach.<br/>The Resort is surrounded by a canal on two sides, ideal for fishing or boating,…"
How to use it: - totalResultsCount helps you size pagination and display result totals. - resolvedQuery echoes the effective filters used. - tieredResults[0].results is the current page of properties; each has lister contact info and a mainPhoto object. To render an image, combine server and uri, and specify an image size path per the note.
Python example using the same query
import requests
from urllib.parse import urlencode
API_URL = "https://zylalabs.com/api/1476/australia-realty-api/1221/get-properties-list"
params = {
"pageSize": "50",
"channel": "sold",
"searchLocation": "Sunshine Coast, QLD",
"searchLocationSubtext": "Region",
"type": "region",
"page": "2",
"sortType": "new-desc",
}
headers = {
"Authorization": "Bearer YOUR_API_KEY"
}
resp = requests.get(f"{API_URL}?{urlencode(params)}", headers=headers, timeout=30)
resp.raise_for_status()
data = resp.json()
print("Pretty URL:", data.get("prettyUrl"))
print("Total results:", data.get("totalResultsCount"))
tiered = data.get("tieredResults", [])
if tiered:
page_results = tiered[0].get("results", [])
print("Results on this page:", len(page_results))
if page_results:
first = page_results[0]
lister = first.get("lister", {})
print("First result prettyUrl:", first.get("prettyUrl"))
print("Lister name:", lister.get("name"))
main_photo = lister.get("mainPhoto", {})
server = main_photo.get("server")
uri = main_photo.get("uri")
# Choose a size as required by the API note, e.g., 1536x800
if server and uri:
# The provided 'uri' already contains the image path; size path is specified in examples.
# If you need a sized path, ensure you request a valid size per documentation.
full_image_url = f"{server}{uri}"
print("Image URL:", full_image_url)
Notes: - Spaces in searchLocation must be URL-encoded. Using urlencode ensures correct encoding. - The response includes HTML line breaks in the description; strip or sanitize as needed before display. - Respect the “highest pagination number” rule if you inspect page fields in responses.
Endpoint 2: Get Property Details
Use this to retrieve the full detail for a specific property. You’ll likely call this when a user opens a property page after selecting it from the list.
- Method: GET
- URL: https://zylalabs.com/api/1476/australia-realty-api/1222/get-property-details
- Description: Get detailed information of a property
- Request parameters (only those documented):
- id (number, required): 444325280
Image note: You must indicate the format in the URL of the images (e.g., 170x32, 160x30, 114x21, 1536x800) when constructing image URLs from the response’s server and uri fields.
Detail request (cURL)
This retrieves the property with ID 444325280.
Sample JSON response
{"totalResultsCount":1,"results":[{"prettyUrl":"property-unit-qld-east+brisbane-444325280","standard":false,"midtier":false,"lister":{"mobilePhoneNumber":"0415648373","website":"http://www.housemark.com.au","phoneNumber":"0415648373","powerProfile":false,"name":"Isabella Palinkas","mainPhoto":{"server":"https://i3.au.reastatic.net","name":"main photo","uri":"/10082ec1487f85957c4f7062944636ee7600a93bdaf34549cb5f2705c1250f13/main.jpg"},"id":"3706692","email":"[email protected]"},"featured":false,"signature":true,"channel":"rent","description":"Welcome to 4/8 Longlands Street, East Brisbane! Just moments from The Gabba and surrounded by an array of cafés, shops, transport options, and major amenities, this home is ideal for those seeking easy inner-city living.<br/><br/>Recently transformed with a complete interior refresh, this beautifully updated unit is ready for its new owners to enjoy. Featuring fresh paint throughout, a stunning brand-new kitchen, renovated bathroom and laundry, and new flooring throughout, every detail has been thoughtfully modernised. Combining comfort, functionality and modern appeal, this is an outstanding opportunity for those seeking…"}
How to use it: - results[0] holds the property. Pull prettyUrl for routing, channel for context (e.g., rent vs sold), and description for the detail page. - lister has contact details (name, phone, email) and a mainPhoto with server and uri for image rendering. As with the list endpoint, specify a valid image size path per the API note when constructing image URLs.
Endpoint 3: Autocomplete
Use this to offer search suggestions as a user types a location. It returns a set of suggestions with type hints such as region or suburb.
- Method: GET
- URL: https://zylalabs.com/api/1476/australia-realty-api/5339/autocomplete
- Description: To use this endpoint you must specify a term to be autocompleted.
- Request parameters: None are documented here. Do not add undocumented keys; authenticate and check the API page for details.
Autocomplete request (cURL)
This shows the authenticated call shape. When adding a term, use only the parameters documented on the API page; avoid guessing keys.
Sample JSON response
{"_embedded":{"suggestions":[{"display":{"subtext":"Region","text":"Sydney CBD, NSW"},"id":"6102b706-7216-4cde-b780-45cba0514ac5","source":{"atlasId":"6102b706-7216-4cde-b780-45cba0514ac5","name":"Sydney CBD","state":"NSW"},"type":"region"},{"display":{"subtext":"Suburb","text":"Sydney, NSW 2000"},"id":"99b291a3-bfcf-4bf9-bbaa-bdb9d89abc24-2000","source":{"atlasId":"99b291a3-bfcf-4bf9-bbaa-bdb9d89abc24","name":"Sydney","postcode":"2000","state":"NSW"},"type":"suburb"},{"display":{"subtext":"Suburb","text":"Sydney Olympic Park, NSW 2127"},"id":"19174a2e-3f53-4be4-8477-443d47249f20-2127","source":{"atlasId":"19174a2e-3f53-4be4-8477-443d47249f20","name":"Sydney Olympic Park","postcode":"2127","state":"NSW"},"type":"suburb"},{"display":{"subtext":"Region","text":"Western Sydney, NSW"},"id":"637c2a12-9141-4e1d-adfa-30bd200a49a4","source":{"atlasId":"637c2a12-9141-4e1d-adfa-30bd200a49a4","name":"Western Sydney","state":"NSW"},"type":"region"},{"display":{"subtext":"Region","text":"South Western Sydney, NSW"},"id":"0eadb86e-6345-43b6-ab6d-18e17c779817","source":{"atlasId":"0eadb86e-6345-43b6-ab6d-18e17c779817","name":"South Western Sydney","state":"NSW"},"type":"region"},{"display":{"subt…
How to use it: - Read _embedded.suggestions[].display.text to show the label in your UI. - Use type to route downstream queries (e.g., region vs suburb). - source fields help you pre-fill searchLocation and related properties for list queries.
Practical integration notes
- Authentication: Send Authorization: Bearer YOUR_API_KEY on every request.
- URL encoding: Encode spaces and commas in query strings (e.g., Sunshine+Coast%2C+QLD). Libraries like requests or fetch/URLSearchParams handle this for you.
- Pagination: The list endpoint may indicate a highest page around 50; do not iterate beyond what the API returns.
- Image URLs: Responses include server and uri for photos. You must indicate a supported size in image paths per the notes. Use only the sizes specified by the API.
- Caching: Cache list responses for short periods when building infinite scroll or dashboards. Invalidate caches when users change filters or channels.
- Rendering HTML in descriptions: Descriptions may include HTML break tags (<br/>). Sanitize or render safely in your frontend.
Real-world implementations you can ship this week
- Sold property feed by region: Use Get Properties List with channel=sold and a region term from Autocomplete. Display lister phone/email and the main photo.
- Property detail pages: When a user clicks a card, call Get Property Details with the property id to render a dedicated page with contact info and long-form description.
- Location search box: Call Autocomplete as the user types; when they pick a suggestion, feed its text/type into the list query’s searchLocation, searchLocationSubtext, and type.
- Analytics overlay: Use totalResultsCount to show counts and trend charts (when you fetch multiple pages or time-sliced queries using sortType).
Calling the Australia Realty API from an AI agent (MCP)
You can also call any Zyla API from AI coding agents through the MCP endpoint. Point your MCP-compatible client (Claude Code, Cursor, Windsurf, etc.) at:
Supply your Zyla API key in the apikey query string. Once connected, your agent can invoke the same Australia Realty API endpoints shown above through MCP, using the exact URLs and parameters documented here. Keep parameter names identical, and continue to include only documented keys. For authentication inside tools that forward headers, ensure Authorization: Bearer YOUR_API_KEY is present, or rely on the MCP apikey configuration where supported.
Troubleshooting
- 401 or missing data: Verify the Authorization header value and that your subscription is active for the Australia Realty API.
- Empty suggestions: Ensure you supply a term to the Autocomplete endpoint as documented on the API page. Do not invent parameter names.
- Unexpected pagination behavior: Check the response for page-related fields. If a page value of 50 appears as the cap, stop paginating beyond that index.
- Images not rendering: Confirm you’re constructing image URLs with the server and uri and using one of the supported size formats mentioned in the endpoint notes.
Where to find the API and get your key
Explore the listing and subscribe here: Australia Realty API on Zyla API Hub. Zyla uses a subscription + quota model (not pay-per-call). For this API, there’s a 7-day trial or 50 requests, and there is no free plan. If you’re new to Zyla, create an account and get your key: Register. You can always return to browse other categories at zylalabs.com.
FAQ
What header do I use for auth?
Send Authorization: Bearer YOUR_API_KEY on every request to the Hub URLs shown in this guide.
How do I build image URLs?
Combine the server and uri fields from the response, and ensure you indicate a supported size in the image path as noted by the API (e.g., 170x32, 160x30, 114x21, 1536x800).
How do I search by region or suburb?
Use the Autocomplete endpoint to retrieve suggestions. Read the suggestion’s display.text and type to populate searchLocation, searchLocationSubtext, and type for the Get Properties List request.
How many pages should I iterate?
Respect the pagination note: if a page field returns a value of 50, that is the highest page number available. Do not paginate beyond what the API indicates.
Is there a free plan?
No. This API uses subscription + quota. For this API, there’s a 7-day trial or 50 requests. Check the API page for current access details.
Ready to ship? Create your account and get an API key now: Register. Then open the Australia Realty API page, subscribe, and paste the cURL from this guide to see results in seconds.
Official API response
{
"prettyUrl": "/sold/in-sunshine+coast%2c+qld/list-2?activeSort=list-date",
"totalResultsCount": 162134,
"resolvedLocalities": [
{
"display": "Sunshine Coast, QLD",
"precision": "region",
"atlasId": "9280a900-d539-4e0c-9385-9590315c4cb5",
"state": "QLD"
}
],
"resolvedQuery": {
"localities": [
{
"locality": "Sunshine Coast",
"subdivision": "QLD",
"searchLocation": "Sunshine Coast, QLD"
}
],
"sortType": "new-desc",
"channel": "sold",
"pageSize": "30",
"page": "2",
"filters": {
"surroundingSuburbs": true
}
},
"tieredResults": [
{
"tier": 1,
"count": 30,
"results": [
{
"prettyUrl": "property-unit-qld-mudjimba-122053054",
"standard": true,
"midtier": false,
"lister": {
"mobilePhoneNumber": "0402972763",
"website": "http://www.bluemoonproperty.com.au",
"phoneNumber": "0402972763",
"powerProfile": false,
"jobTitle": "Sales Consultant",
"name": "Beatrice Borns",
"mainPhoto": {
"server": "https://i3.au.reastatic.net",
"name": "main photo",
"uri": "/ca783e0f628a14ff14b48ea8e53a7432f9c5b8f5676004cc2f8fecbfdc27ca95/main.jpg"
},
"id": "1405426",
"email": "[email protected]"
},
"featured": false,
"signature": false,
"constructionStatus": "established",
"channel": "sold",
"description": "Why pay a fortune for holidays when you can own your own piece of Resort-style living on the beautiful Sunshine Coast.<br/>Take use of the pool, 2 tennis courts, putting green, BBQ Area by the River and separate play ground for the children.<br/><br/>This 3 bedroom Townhouse is situated in the Pet Friendly gated and secure Resort just a short 2km from the beautiful Mudjimba Beach.<br/>The Resort is surrounded by a canal on two sides, ideal for fishing or boating,…
Official API response
{
"prettyUrl": "/sold/in-sunshine+coast%2c+qld/list-2?activeSort=list-date",
"totalResultsCount": 162134,
"resolvedLocalities": [
{
"display": "Sunshine Coast, QLD",
"precision": "region",
"atlasId": "9280a900-d539-4e0c-9385-9590315c4cb5",
"state": "QLD"
}
],
"resolvedQuery": {
"localities": [
{
"locality": "Sunshine Coast",
"subdivision": "QLD",
"searchLocation": "Sunshine Coast, QLD"
}
],
"sortType": "new-desc",
"channel": "sold",
"pageSize": "30",
"page": "2",
"filters": {
"surroundingSuburbs": true
}
},
"tieredResults": [
{
"tier": 1,
"count": 30,
"results": [
{
"prettyUrl": "property-unit-qld-mudjimba-122053054",
"standard": true,
"midtier": false,
"lister": {
"mobilePhoneNumber": "0402972763",
"website": "http://www.bluemoonproperty.com.au",
"phoneNumber": "0402972763",
"powerProfile": false,
"jobTitle": "Sales Consultant",
"name": "Beatrice Borns",
"mainPhoto": {
"server": "https://i3.au.reastatic.net",
"name": "main photo",
"uri": "/ca783e0f628a14ff14b48ea8e53a7432f9c5b8f5676004cc2f8fecbfdc27ca95/main.jpg"
},
"id": "1405426",
"email": "[email protected]"
},
"featured": false,
"signature": false,
"constructionStatus": "established",
"channel": "sold",
"description": "Why pay a fortune for holidays when you can own your own piece of Resort-style living on the beautiful Sunshine Coast.<br/>Take use of the pool, 2 tennis courts, putting green, BBQ Area by the River and separate play ground for the children.<br/><br/>This 3 bedroom Townhouse is situated in the Pet Friendly gated and secure Resort just a short 2km from the beautiful Mudjimba Beach.<br/>The Resort is surrounded by a canal on two sides, ideal for fishing or boating,…