Flatmates APIflatmates.com.au ↗
Retrieve structured seeker profiles, move dates, budgets, and property listings from Flatmates.com.au via 4 REST endpoints. Paginate active seekers and properties.
What is the Flatmates API?
The Flatmates.com.au API exposes 4 endpoints that return structured data from Australia's largest flatmate-finding platform, covering seeker profiles, property listings, and moving leads. The get_seeker_details endpoint returns a complete profile including weekly budget, preferred suburbs, intended stay length, and a is_potential_customer qualification flag — useful for targeting near-term movers without manual browsing.
curl -X GET 'https://api.parse.bot/scraper/51849592-0bb5-4823-91fd-7216a82c43c4/get_seeker_details?seeker_id=F4765165' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace flatmates-com-au-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.flatmates_com_au_data_api import Flatmates, Seeker, Property, SeekerNotFound
client = Flatmates()
# Discover active seeker IDs from the sitemap
for seeker_id in client.seekers.discover(offset=0, limit=5):
print(seeker_id)
# Fetch a specific seeker's full profile
seeker = client.seekers.get(seeker_id="F4765165")
print(seeker.name, seeker.budget, seeker.move_date, seeker.is_potential_customer)
print(seeker.preferred_locations)
print(seeker.preferred_accommodation_types)
# Discover property listings
for prop in client.properties.discover(offset=0, limit=3):
print(prop.id, prop.url, prop.title)
# Get qualified moving leads (seekers with upcoming move dates)
for lead in client.seekers.list_moving_leads(limit=5):
print(lead.name, lead.move_date, lead.budget, lead.potential_customer_reasons)
Retrieve a seeker's full profile including move date, budget, preferred locations, accommodation preferences, and a potential-customer qualification flag. The seeker ID (F-prefixed) is required; if the prefix is omitted it is added automatically.
| Param | Type | Description |
|---|---|---|
| seeker_idrequired | string | The unique ID of the person, prefixed with F (e.g. F4746278). If the F prefix is omitted it is added automatically. |
{
"type": "object",
"fields": {
"id": "string — seeker ID with F prefix",
"url": "string — full profile URL",
"name": "string — display name",
"budget": "string — weekly budget with dollar sign (e.g. $250)",
"about_me": "string — free-text description from the seeker",
"move_date": "string — when the seeker wants to move (e.g. Now, or YYYYMMDD)",
"stay_length": "string — intended stay duration (e.g. 3 months stay)",
"preferred_locations": "array of strings — suburb and postcode (e.g. Melbourne, 3000)",
"is_potential_customer": "boolean — whether the seeker qualifies as a moving lead",
"potential_customer_reasons": "array of strings — reasons for qualification",
"preferred_accommodation_types": "array of strings — accommodation type labels"
},
"sample": {
"data": {
"id": "F4765165",
"url": "https://flatmates.com.au/F4765165",
"name": "Ursula",
"budget": "$200",
"about_me": "Just arrived in Australia, my dream is to travel the World",
"move_date": "Now",
"stay_length": "1 month stay",
"preferred_locations": [
"Melbourne, 3000"
],
"is_potential_customer": true,
"potential_customer_reasons": [
"Move date: Now"
],
"preferred_accommodation_types": [
"Room(s) in an existing share house",
"Studio flats for rent",
"Whole properties for sharing",
"Teamup"
]
},
"status": "success"
}
}About the Flatmates API
Seeker Profile Data
The get_seeker_details endpoint accepts a seeker ID with or without the F prefix (e.g. F4746278 or 4746278) and returns a full profile object. Key fields include budget (formatted as a dollar-weekly string like $250), move_date (either Now or a YYYYMMDD string), stay_length, preferred_locations (an array of suburb/postcode pairs), and about_me free text. Two qualification fields — is_potential_customer (boolean) and potential_customer_reasons (array of strings) — flag whether the seeker is a near-term moving lead.
Moving Leads Discovery
The get_moving_leads endpoint surfaces seeker profiles with upcoming move dates. Pass an integer limit to control how many qualified leads come back. The response includes a count integer and a leads array where each element matches the full get_seeker_details schema, so the same downstream processing code applies to both endpoints.
Paginated Discovery of Seekers and Properties
discover_seekers returns a paginated slice of active seeker IDs sourced from the site's index, with limit and offset parameters for cursor-free pagination. The response contains a seeker_ids string array (all F-prefixed) and a total_count reflecting the full active pool. discover_properties works identically but returns property objects with id, url, and title fields alongside a total_count. Use either endpoint to build bulk pipelines that feed into get_seeker_details for enrichment.
The Flatmates API is a managed, monitored endpoint for flatmates.com.au — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when flatmates.com.au changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official flatmates.com.au API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a moving-leads pipeline by calling get_moving_leads and filtering on is_potential_customer for near-term renters
- Map rental demand by aggregating preferred_locations fields across seeker profiles discovered via discover_seekers
- Monitor weekly budget distributions in a target suburb by combining discover_seekers with batch get_seeker_details calls
- Power a property management dashboard by paginating discover_properties and tracking active listing counts over time
- Qualify relocation leads for furniture or utilities services using move_date and stay_length fields from seeker profiles
- Enrich a CRM with structured seeker data by piping seeker IDs from discover_seekers into get_seeker_details
- Identify short-stay demand by filtering stay_length values across bulk seeker profile pulls
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.