Skip to content
Launching soon in Qatar.Join the waitlist
Qalypso
Developers

The Qatar property data API.

The same sourced, dated figures behind our market pages, available as plain JSON. No API key, no auth, no sign-up. Built on Qatar's official open data and refreshed automatically.

No API keyJSON24h cache
Quick start

One request, no setup.

Every endpoint is a plain GET that returns JSON. Try the market snapshot from your terminal.

curl
curl https://www.qalypsoqatar.com/api/market
GET/api/market

The market snapshot.

The full Qatar market snapshot that powers the market data page: national headline figures, prices by municipality and district, prime freehold-zone prices, the property-type split and a multi-year trend. No API key or authentication required.

Response fields

asOf
ISO date of the latest registered transaction in the data.
headline
Latest-year totalValue, txCount and year-on-year changes (volume and mix, not price).
byMunicipality
Average registered price per m² and sale count per municipality.
byDistrict
The same, at district granularity.
primeZones
Registered apartment prices for prime freehold zones (2025, levels only).
byType
Whole-property sales split by usage (count and value).
trend
Per-year whole-property count and total value.
attribution
The required source-attribution string.
GET /api/market (trimmed example)
{
  "live": true,
  "asOf": "2025-12-31",
  "latestYear": 2025,
  "headline": {
    "year": 2025,
    "totalValue": 19040236484,
    "txCount": 4278,
    "valueYoY": 19.4,
    "countYoY": 18.0
  },
  "byMunicipality": [
    { "name": "Doha Municipality", "pricePerSqm": 8190, "count": 6811 }
  ],
  "byDistrict": [
    { "name": "Al Wakra", "pricePerSqm": 3897, "count": 262 }
  ],
  "primeZones": [
    { "name": "The Pearl Island", "pricePerSqm": 12820, "count": 176 }
  ],
  "byType": [
    { "label": "Villas & houses", "count": 3620, "value": 12695120451 }
  ],
  "trend": [
    { "year": 2025, "count": 4278, "value": 19040236484 }
  ],
  "attribution": "Source: Ministry of Justice via data.gov.qa (CC BY 4.0)"
}

Trimmed for illustration. Arrays hold one row here; the live response returns the full set. Prices are registered sale prices, not asking prices.

GET/api/market/areas

Prices by area.

The per-area price list behind the prices-by-area pages. Each area row carries the figure that matches its emphasis: apartment-led prime zones surface the apartment price, the rest the whole-property price, with a kind label so the number is never ambiguous.

Response fields

areas[]
The curated districts and prime zones that have a standalone page.
areas[].name
District name as it appears in the registry.
areas[].slug
URL slug, matching /market/areas/{slug}.
areas[].pricePerSqm
Average registered price per m² (the kind below says which market).
areas[].count
Number of registered sales behind that price.
areas[].kind
"whole-property" or "apartment", labelling which figure is shown.
areas[].hasApartments
Whether the district also has registered apartment-unit sales.
otherActiveDistricts[]
The lighter tail: active districts with no standalone page (name, pricePerSqm, count).
GET /api/market/areas (trimmed example)
{
  "areas": [
    {
      "name": "Al Wakra",
      "slug": "al-wakra",
      "pricePerSqm": 3897,
      "count": 262,
      "kind": "whole-property",
      "hasApartments": false
    },
    {
      "name": "The Pearl Island",
      "slug": "the-pearl-island",
      "pricePerSqm": 12820,
      "count": 176,
      "kind": "apartment",
      "hasApartments": true
    }
  ],
  "otherActiveDistricts": [
    { "name": "Ain Khaled", "pricePerSqm": 4243, "count": 80 }
  ],
  "attribution": "Source: Ministry of Justice via data.gov.qa (CC BY 4.0)"
}

Trimmed for illustration. Whole-property and apartment figures are never blended; the kind field tells you which one each row shows.

Caching

Refreshed daily, cached at the edge.

Both endpoints are revalidated on a 24-hour cycle (the source has historically published weekly, but can pause) and served with edge caching. Expect the same payload within a day, then a refresh.

Response header
Cache-Control: public, s-maxage=86400, stale-while-revalidate=604800
Licence & attribution

Free to reuse, with attribution.

The underlying data comes from the Ministry of Justice real-estate registry, published via Qatar Open Data (data.gov.qa) under CC BY 4.0. The figures here are independently computed by Qalypso. They are not an official statistic and are not produced, reviewed or endorsed by any Qatari government body.

If you reuse the data

Attribute both the source and the compiler: Ministry of Justice via data.gov.qa (CC BY 4.0), aggregated and presented by Qalypso. The CC BY 4.0 licence applies to the underlying open data, not to Qalypso's derived analysis.

Limits & roadmap

What is not here yet.

Two endpoints are live today. We would rather ship a small, honest API than document things that do not exist, so here is what is on the roadmap and not available yet.

  • Per-zone detail and trend-filtering endpoints are planned, not live. For now, the two endpoints above are the whole API.
  • API keys and rate limiting are on the roadmap. There is no auth today; please be considerate with request volume.
  • Apartment figures cover Aug to Dec 2025 only, levels not trends, so the API exposes no apartment year-on-year.
Need more?

Tell us what you are building.

Want a finer endpoint, a higher volume, or a data partnership? Tell us about it and we will see what we can do.

Source data: Ministry of Justice (State of Qatar), published via Qatar Open Data (data.gov.qa) under CC BY 4.0. Independently computed by Qalypso. Not an official statistic; not endorsed by any Qatari government body.