Private Property API

South Africa Property Data API for Sales, Rentals, Farms, and Developments

Scrappa is an independent Private Property API that returns South African property listings as structured JSON. Search residential, commercial, and farm listings for sale and to rent with price, bedroom, and sub-category filters, browse new developments and open one for full detail, and resolve any location through a complete province-to-suburb hierarchy. Scrappa is not affiliated with or endorsed by Private Property.

500 free credits
No card needed
From $0.20 / 1k
Pay as you go
Structured JSON
Ready for apps
API key access
Test in minutes
7
Endpoints
9
Provinces
$0.20
Per 1k requests

Try it now

Make one request. Inspect structured JSON.

Use the first endpoint in this API family with a Scrappa API key. Every account includes 500 free monthly credits, so you can validate the response shape before buying credits.

Request preview
Request
curl -X GET "https://scrappa.co/api/privateproperty/listings/search?type=residential&deal_type=sale&min_bedrooms=3" \
  -H "Accept: application/json" \
  -H "X-API-KEY: YOUR_API_KEY"
JSON response
{
  "success": true,
  "type": "residential",
  "deal_type": "sale",
  "page": 1,
  "total_filtered_results": 110757,
  "results": [
    {
      "portalRef": "T5642440",
      "listingId": 12109613,
      "listingPrice": {
        "price": 1850000,
        "isPoa": false
      },
      "propertySuburbName": "Pretoria East",
      "propertyAttributes": {
        "beds": 4,
        "baths": 3
      },
      "description_truncated": true
    }
  ]
}

What you can build

Structured data for real applications. Here are some ideas.

Listing and Rental Feeds

Pull for-sale and to-rent listings nationally or per province, suburb, or town, with price, bedroom, and sub-category filters.

New Development Discovery

Search new developments by location and price range, then open a single development for its full detail.

Location Pickers

Power a suburb picker with autocomplete suggestions, or walk the full administrative hierarchy from province down to suburb.

Farm and Commercial Coverage

Cover the whole South African market, including farms, small holdings, industrial, retail, office, and hospitality listings.

Private Property scraper API

Private Property API for South African listing search, developments, and location lookup

The Private Property API is built for proptech developers, analysts, and agencies that need South African property data without maintaining their own scrapers. Combine type with deal_type to pick a market, filter by price, bedrooms, and sub-category, resolve a location through autocomplete or the province-to-suburb hierarchy, and search new developments. Listings keep the upstream field names, so they stay rich and survive upstream field additions.

Search residential, commercial, and farm listings across nine provinces, for sale and to rent.

Filter by price range, bedrooms, bathrooms, sub-category, rental price period, and property amenities.

Get listing prices, statuses, addresses, attributes, features, media URLs, and the advertising office as structured JSON.

Walk the complete South African location hierarchy, or autocomplete a location prefix and reuse the returned id.

Search new developments and open one for its full detail.

Every listing is flagged with description_truncated so you know when a description arrived shortened.

Test the Private Property API with 500 free monthly Scrappa credits before scaling production traffic.

Choose the right Private Property API endpoint

Search listings for a province

Look up the province id with locations/children using shape_id 1, then pass it as location_id to listings/search with type and deal_type. The response includes total_filtered_results, pagination, and listings with price, address, attributes, features, media, and the advertising office.

Open Private Property Search API docs

Build a suburb picker

Call locations/autocomplete with a prefix such as Pretoria. Each suggestion carries a text, a descriptor of the parent region, and an item id that can be used directly as location_id in search.

Open Private Property Autocomplete docs

Track new developments

Search developments by location and price range, then open one by development_id for the full record, including its price range and imagery.

Open Private Property Developments docs

Available endpoints

Everything you need in one API.

GET

Listing Search

/api/privateproperty/listings/search

Search residential, commercial, or farm listings for sale or rent

GET

Location Hierarchy

/api/privateproperty/locations/children

List the child locations of a location id; use 1 for the provinces

Scrappa vs Generic scraping APIs

See how Scrappa compares to the official API.

Dedicated Private Property endpoints
Scrappa: Yes (7 endpoints)
Generic scraping APIs:
Output format
Scrappa: Structured JSON
Generic scraping APIs: Raw HTML
Upstream listing fields preserved
Scrappa:
Generic scraping APIs: You write the parser
Residential, commercial, and farm coverage
Scrappa:
Generic scraping APIs:
New development search and detail
Scrappa:
Generic scraping APIs:
Province-to-suburb location hierarchy
Scrappa:
Generic scraping APIs: You build it
Parser maintenance
Scrappa: Handled by Scrappa
Generic scraping APIs: Your team
Failed requests billed
Scrappa: Never
Generic scraping APIs: Varies by provider
Free tier
Scrappa: 500 credits/month
Generic scraping APIs: Varies by provider

Key features

Search residential, commercial, and farm listings for sale and to rent
Filter by price range, bedrooms, bathrooms, sub-category, rental price period, and amenities
Listing prices, statuses, addresses, attributes, features, media URLs, and the advertising office as structured JSON
New development search plus full detail for a single development
Complete province-to-suburb location hierarchy and prefix autocomplete
Every listing flagged with description_truncated when the description arrived shortened
Simple API key auth with 500 free credits per month

Frequently asked questions

The Private Property API is Scrappa's REST API for public Private Property listing data. It returns listing search results, new developments, development detail, location lookup, and the current bond rate as structured JSON.

No. Scrappa is an independent service and is not affiliated with or endorsed by Private Property. You only need a Scrappa API key to use the seven endpoints on this page.

Use the locations endpoints. locations/children with shape_id 1 returns the nine provinces, and each returned id can be passed back as shape_id to walk down to regions, areas, and suburbs. locations/autocomplete with a prefix returns suggestions whose item id can be used directly as location_id in search.

They depend on the listing type and deal type. Residential for sale accepts House, TownHouseCluster, ApartmentFlat, and VacantLandPlot, plus GardenCottage when renting. Commercial accepts Commercial, Industrial, Retail, Office, Hospitality, and VacantLandPlot. Farms accept Farm, SmallHolding, FarmWithHouse, FarmLand, AgriculturalHolding, CommercialFarm, and GameFarm. Unknown values are rejected with a 422 instead of silently returning nothing.

Listing descriptions arrive as a short prefix rather than the full text. Every affected listing carries description_truncated set to true, so you can tell the difference between a short description and a complete one.

The search payload carries the short form only. All other listing fields, including price, address, attributes, features, and media, are returned in full.

Pages are capped, because a complete national walk would be tens of thousands of requests. Narrow by location or price to stay inside the cap.

Yes. Every Scrappa account includes 500 free credits per month, so you can test the Private Property endpoints before buying credit packs or moving to a subscription.

Each request uses one Scrappa credit, and paid usage starts at $0.20 per 1,000 requests. Failed requests are not billed.

Start using the Private Property API

Sign up and get 500 free credits. No credit card required.