Skip to Content

Property24 Data Parser & API

Property24 is South Africa’s #1 property portal — ~13.09M monthly visits (Semrush, Mar 2026), owned by Naspers/Prosus — and PropAPIS extracts its resale, rental, new-build, commercial and land listings with agent, photo and geo data through a single REST API. Cover Johannesburg, Cape Town, Durban and the whole South African market without building or maintaining a scraper.

CountrySouth Africa
TypePortal
OwnerNaspers / Prosus
Listing typesresale, rental, new-build, commercial, land
Monthly visits~13.09M / mo (Semrush, Mar 2026)
Active listingsVery large
API accessNo public API (parse-only)
Parse priority★★★★★
Official sitewww.property24.com

Platform Overview

Market Position

  • South Africa’s dominant property portal: ~13.09M monthly visits (Semrush, Mar 2026)
  • Owned by Naspers/Prosus; the same group also runs Property24 Kenya (30,000+ listings)
  • Leads #2 portal Private Property (~2.98M) — the most mature, data-rich African real-estate market
  • Subject of a 2023+ Competition Commission ruling targeting exclusivity practices between the two leaders

Market Coverage

Geographic Coverage:

  • Johannesburg and Pretoria (Gauteng)
  • Cape Town and the Western Cape
  • Durban and KwaZulu-Natal
  • Nationwide provinces and towns

Property Types:

  • Houses and Apartments / Flats
  • Townhouses and Cluster Homes
  • New Developments
  • Commercial and Industrial
  • Vacant Land and Farms / Smallholdings

Data Availability

Property24 sits in the most mature and data-rich African market and exposes detailed per-property fields — including erf and floor size, levies and rates, and agency/agent profiles. It carries Medium anti-bot (Naspers infrastructure), which PropAPIS handles for you. No open public API exists, so PropAPIS provides structured access.

Listing Categories:

  • Buy: Resale and ready-to-move properties
  • Rent: Long-term residential rentals
  • New Developments: Developer projects
  • Commercial: For sale and to let
  • Land / Farms: Vacant land and agricultural

Data Fields Available

PropAPIS extracts structured data from each Property24 listing:

Property Information

  • Address: Suburb, city and province
  • Price: Sale price or rent
  • Bedrooms, Bathrooms and Garages
  • Property Type: House, apartment, townhouse, land
  • Erf Size and Floor Size
  • Levies and Rates where shown

Listing Details

  • Description: Full listing text
  • Amenities: Facilities and features
  • Photos: Image URLs
  • Listed / Updated date

Agent Information

  • Agency: Agency name and branch
  • Agent: Listing agent name
  • Agent Contact: Phone where published

Location Data

  • Suburb, City and Province
  • Coordinates: Latitude and longitude where shown

API Endpoints

Get Property Details

from propapis import PropAPIS api = PropAPIS(api_key='your_api_key') # Get a listing by URL or ID property_data = api.platforms.property24.get_property( listing_id='12345678' ) print(f"Title: {property_data.title}") print(f"Price: ZAR {property_data.price:,}") print(f"Type: {property_data.property_type}") print(f"Suburb: {property_data.suburb}")

Search Listings

# Search Property24 listings listings = api.platforms.property24.search( province='Western Cape', suburb='Sea Point', purpose='for-sale', min_price=1500000, max_price=6000000, min_bedrooms=2, property_type='Apartment' ) for listing in listings[:10]: print(f"{listing.title} - ZAR {listing.price:,}") print(f" {listing.bedrooms} bed | {listing.suburb}")

Search Rentals

# Search rental listings rentals = api.platforms.property24.search( province='Gauteng', purpose='to-rent', min_price=8000, # Monthly rent max_price=25000 ) for rental in rentals[:5]: print(f"{rental.title} - ZAR {rental.price:,}/mo")

Quick Start

from propapis import PropAPIS api = PropAPIS(api_key='your_api_key') # Search Property24 listings in Cape Town listings = api.platforms.property24.search(province='Western Cape', purpose='for-sale') for listing in listings[:5]: print(f"{listing.title} - ZAR {listing.price:,}")
import { PropAPIS } from 'propapis'; const api = new PropAPIS({ apiKey: 'your_api_key' }); // Search Property24 listings in Cape Town const listings = await api.platforms.property24.search({ province: 'Western Cape', purpose: 'for-sale', }); listings.slice(0, 5).forEach((l) => { console.log(`${l.title} - ZAR ${l.price.toLocaleString()}`); });
curl "https://api.propapis.com/v1/platforms/property24/search?province=Western%20Cape&purpose=for-sale" \ -H "Authorization: Bearer your_api_key"

Frequently asked questions