Discover/DDProperty API
live

DDProperty APIddproperty.com

Search Thailand property listings for sale and rent, get listing details, look up MRT/BTS stations, and calculate mortgage payments via the DDProperty API.

Endpoint health
verified 4d ago
search_properties_for_rent
calculate_mortgage
search_properties_for_sale
get_location_suggestions
get_property_detail
5/5 passing latest checkself-healing
Endpoints
5
Updated
26d ago

What is the DDProperty API?

The DDProperty API exposes 5 endpoints covering Thailand's largest property portal, letting you search sales and rental listings, retrieve full listing details, look up MRT/BTS transit stations, and run mortgage amortization calculations. The search_properties_for_sale endpoint alone returns paginated results with fields including price in THB, bedroom/bathroom counts, agent details, and address — all filterable by property type, price range, and keyword.

Try it
Page number for pagination
Number of bedrooms filter
Search keyword such as location name or property name
Maximum price filter in THB
Minimum price filter in THB
Property type group code
api.parse.bot/scraper/7daa3631-0833-4aa5-b97e-c09547f619ea/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/7daa3631-0833-4aa5-b97e-c09547f619ea/search_properties_for_sale?page=1&bedrooms=2&freetext=Bangkok&max_price=10000000&min_price=1000000&property_type=N' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 ddproperty-com-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.ddproperty_thailand_api import DDProperty, PropertyType

dd = DDProperty()

# Search condos for sale in Bangkok
for listing in dd.listings.search_for_sale(freetext="Bangkok", property_type=PropertyType.CONDO, limit=3):
    print(listing.title, listing.price, listing.beds, listing.address)

# Search rentals in Pattaya
for rental in dd.listings.search_for_rent(freetext="Pattaya", min_price="20000", limit=2):
    print(rental.title, rental.price, rental.baths)

# Get property details by slug
detail = dd.properties.get(slug="chivani-pattaya-for-rent-500302429")
print(detail.title, detail.price, detail.floor_area, detail.listing_type)
print(detail.address.district, detail.address.region)

# Search MRT/BTS stations
for station in dd.stations.search(query="Ari"):
    print(station.name, station.line, station.location.latitude, station.location.longitude)

# Calculate mortgage
mortgage = dd.mortgages.calculate(price=5000000, downpayment_pct=20, tenure_years=25)
print(mortgage.monthly_payment, mortgage.loan_amount, mortgage.total_interest)
All endpoints · 5 totalmissing one? ·

Search properties for sale in Thailand. Supports free-text location search, property type filtering, price range, and bedroom count. Returns paginated listings ordered by recency. Each listing includes price, location, bedroom/bathroom count, and agent contact. Pagination via page number; total_pages in the response indicates the last available page.

Input
ParamTypeDescription
pageintegerPage number for pagination
bedroomsstringNumber of bedrooms filter
freetextstringSearch keyword such as location name or property name
max_pricestringMaximum price filter in THB
min_pricestringMinimum price filter in THB
property_typestringProperty type group code
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "total": "integer total number of matching listings",
    "listings": "array of property listing objects with id, title, address, price, beds, baths, area, agent, and url",
    "total_pages": "integer total number of pages"
  },
  "sample": {
    "data": {
      "page": 1,
      "total": 80503,
      "listings": [
        {
          "id": 60125081,
          "mrt": "",
          "url": "https://www.ddproperty.com/en/property/project/the-pavilion-pinklao-sai-4-bangkok-for-sale-60125081#3856",
          "area": "",
          "beds": 3,
          "agent": {
            "id": 900766919,
            "name": "Agent Name",
            "avatar": "https://th1-cdn.pgimgs.com/agent/900766919/APHO.134252107.V120B.jpg",
            "description": "Private and in the best location"
          },
          "baths": 4,
          "price": "฿12,900,000",
          "title": "The Pavilion Pinklao-Sai 4, Bangkok",
          "images": [],
          "address": "265 Thawi Watthana, Bangkok",
          "currency": "THB",
          "property": {
            "id": 15730,
            "typeCode": "SALE",
            "typeText": "For Sale",
            "typeGroup": "B",
            "newProject": false,
            "isPremiumProjectListing": true
          },
          "posted_on": "10 Jun 2026",
          "price_raw": 12900000,
          "property_type": "For Sale",
          "price_per_area": "฿40,952 / sqm"
        }
      ],
      "total_pages": 4026
    },
    "status": "success"
  }
}

About the DDProperty API

Search and Filter Listings

Both search_properties_for_sale and search_properties_for_rent accept overlapping filter sets: freetext for keyword or location search (e.g., 'Sukhumvit', 'Pattaya'), bedrooms, min_price/max_price in THB, and page for pagination. The sale endpoint adds a property_type filter using single-letter codes — N for condo, B for house, T for townhouse, V for villa, and L for land. Each response includes total, total_pages, and a listings array whose objects carry id, title, address, price, beds, baths, area, agent, and url.

Listing Detail

get_property_detail accepts a slug — the URL path segment that identifies a specific listing, formatted like <property-name>-for-sale-<listing-id>. The response adds fields not present in search results: images (array of image URLs), tenure (e.g., F for freehold), a structured address object with street, district, region, area, and postcode, and an agent object that includes id, name, and badges.

Transit Station Lookup and Mortgage Calculator

get_location_suggestions takes a query string and returns matching MRT/BTS station objects with id, name, type, line, line_color, and geographic coordinates — useful for filtering or tagging listings by transit proximity. calculate_mortgage accepts price, tenure_years, interest_rate, and downpayment_pct, and returns loan_amount, monthly_payment, total_interest, total_repayment, and total_downpayment — all in THB.

Coverage Notes

All listings and data reflect the Thai market only. Prices in search results are returned as formatted strings; the mortgage calculator expects a raw numeric price value. Pagination is cursor-free — use the integer page parameter alongside total_pages to walk result sets.

Reliability & maintenanceVerified

The DDProperty API is a managed, monitored endpoint for ddproperty.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when ddproperty.com 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 ddproperty.com 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.

Last verified
4d ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Aggregate Bangkok condo listings filtered by BTS station proximity using coordinates from get_location_suggestions.
  • Build a rental price comparison tool for specific districts using freetext and min_price/max_price filters.
  • Display full listing pages including images, tenure, and agent badges by resolving slugs via get_property_detail.
  • Embed a mortgage calculator widget that shows monthly payment, total interest, and total repayment for any listed property.
  • Scrape market-level data by paginating search_properties_for_sale with property_type=N to track condo price trends.
  • Cross-reference rental and sale prices for the same area by running parallel queries on both search endpoints.
  • Populate a property recommendation engine using bedroom count, area, and address fields from paginated search results.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does DDProperty have an official developer API?+
DDProperty does not publish a public developer API or documented data feed. This Parse API provides structured access to listing and location data from ddproperty.com.
What does `get_property_detail` return beyond what search results include?+
get_property_detail returns several fields absent from search listings: an images array of photo URLs, a tenure code (e.g., F for freehold), a structured address object broken into street, district, region, area, and postcode, and agent badges. You need the listing's URL slug to call this endpoint.
Does the sale search support filtering by specific Bangkok districts or provinces beyond keyword search?+
The search_properties_for_sale endpoint filters by freetext, property_type, bedrooms, and price range. It does not expose a dedicated district or province filter parameter — location scoping goes through the freetext field. You can fork this API on Parse and revise it to add a structured location parameter if your use case requires it.
Does the API cover properties outside Thailand?+
No. DDProperty is a Thailand-focused portal, and all listings, addresses, and prices reflect the Thai market in THB. Coverage of other countries is not available through this API. You can fork it on Parse and revise it to target a different regional DDProperty domain if one exists.
How does pagination work across the search endpoints?+
Both search endpoints return page (current page), total (total matching listings), and total_pages. Pass the integer page parameter to step through results. There is no cursor-based pagination — you iterate by incrementing page up to the value of total_pages.
Page content last updated . Spec covers 5 endpoints from ddproperty.com.
Related APIs in Real EstateSee all →
dotproperty.com.ph API
Search for residential properties for rent or sale on Dot Property Philippines and retrieve detailed information like pricing, specifications, and agent details from individual listings. Access comprehensive property data to compare options and make informed real estate decisions.
propertyguru.com.sg API
Search and browse thousands of property listings across Singapore for both sale and rent, view comprehensive details like pricing and features, and discover upcoming new project launches. Find the perfect property or connect with real estate agents all in one platform.
privateproperty.co.za API
Search and browse property listings for sale and rent across South Africa by location, price, features, and size, then view detailed information about specific properties. Get location suggestions to help narrow down your search area.
batdongsan.com.vn API
Search and browse property listings for sale or rent across Vietnam's largest real estate marketplace, view detailed property information, explore development projects, and stay updated with the latest real estate news. Access comprehensive real estate data including property specifics, project details, and market insights all in one place.
domain.com.au API
Search and compare property listings for sale, rent, or sold properties across Australia, view detailed property information and agent profiles, and explore suburb insights to make informed real estate decisions. Access comprehensive data on agents, neighborhoods, and properties all in one place.
realestate.com.au API
Search and retrieve property listing data from realestate.com.au, including listings for sale and rent, detailed property information, and nearby schools for any location across Australia.
propertypal.com API
Search and browse thousands of properties across Northern Ireland including rentals, sales, and commercial listings while accessing agent details, price trends, and market news. Get comprehensive property information, open viewing schedules, and real estate insights all in one place.
realtor.com API
Search millions of real estate listings on Realtor.com, view detailed property information, find qualified agents in your area, and access market analytics to understand pricing trends. Get location suggestions and property insights all in one place to help you make informed decisions about buying, selling, or investing in real estate.