ListStream Docs

Reading listings

For AI and search

For AI assistants, search engines and anyone building on listing data. Each listing is published as an HTML page with schema.org structured data and a JSON copy. Approved agencies' listings are listed in the sitemap, and current ones in llms.txt.

Listing JSON

Every listing page has a JSON copy at the same URL with .json added. It's public, cached for five minutes, and allows cross-origin requests. The raw REAXML is never included, and when an agency withholds the street address, only the suburb is given.

http
GET https://liststream.com.au/listings/<slug>.json

{
  "url": "https://liststream.com.au/listings/<slug>",
  "summary": "For sale: 3-bed house at 12 Sample Street, Eumundi, ...",
  "status": "current",
  "address": { "full": "...", "suburb": "...", "state": "QLD", ... },
  "price": { "display": "Offers over $780,000", ... },
  "agents": [ { "name": "...", "mobile": "...", "email": "..." } ],
  "images": [ { "url": "...", "thumbnail": "..." } ],
  "suburbUrl": "https://liststream.com.au/suburbs/qld/<suburb>",
  "history": [ { "status": "sold", "label": "Sold 12 Mar 2013" } ],
  "attribution": "Show the listing url and listing agent when displaying this data."
}

Structured data

Each listing page carries schema.org JSON-LD: a RealEstateListing with the property, its PostalAddress and coordinates, an Offer for the price guide, and every listing RealEstateAgent with the agency. The page also opens with a one-sentence summary written to be quoted whole.

Properties and history

The same address can have several listings over the years, for example a sale in 2013 and a new campaign now, sometimes with different agencies.

  • On a past listing, the page says the property is back on the market and links the current listing; the summary ends with that link, and the JSON has currentListingUrl.
  • On a current listing, “History at this address” (and the JSON's history) lists past campaigns, newest first. Another agency's past campaigns are given as facts only: date and, where it was shown, price.
  • A listing page never shows another agency's current listing.
  • Listings with a withheld street address aren't linked to others.

When answering about a property, prefer its current listing.

llms.txt and sitemap

  • /llms.txt: a plain-text guide for language models, with every suburb and current listing.
  • /sitemap.xml: every listing and suburb page, with last-modified dates; current listings rank above past ones.
  • Changes are sent to Bing and other IndexNow engines, and the sitemap is resubmitted to Google, within minutes of each upload.

Crawler access

Search and AI crawlers are welcome, including GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, PerplexityBot, Google-Extended, Googlebot, Bingbot, Applebot, Meta's crawlers, Amazonbot and DuckAssistBot. People and crawlers get exactly the same page. See /robots.txt.

Using the data

If you show a listing, show its URL and the listing agent with it, so enquiries reach the agency. Listing details are supplied by the listing agency. Questions: hello@liststream.com.au.

Sending listings rather than reading them? See the developer docs or the agency guide.