APIs / Real estate / Hepsiemlak

1 credit per call13 endpoints27 datapoints

Hepsiemlak API

Hepsiemlak API for Turkish property search, map search, listings, projects, agencies, price index and locations as JSON. 1 credit per successful call.

Hepsiemlak
GET/v1/hepsiemlak/search?listing_type=sale&city=istanbul&county[]=kadikoy&rooms[]=3%2B1&sort=price_asc&price_min=5000000&price_max=9000000
{
  "success": true,
  "data": {
    "applied_filters": {
      "property_class": "housing",
      "listing_type": "sale",
      "sort": "price_asc",
      "city": "istanbul",
      "price_min": "5000000",
      "price_max": "9000000",
      "county": [
        "kadikoy"
      ],
      "rooms": [
        "3+1"
      ]
    },
    "pagination": {
      "page": 1,
      "per_page": 20,
      "total": 11,
      "total_pages": 1,
      "returned": 10,
      "skipped_project_cards": 1
    },
    "items": [
      {
        "id": "114422-33",
        "title": "KADIKÖY MERKEZDE BAKIMLI TEMİZ BOŞ TESLİM 3+1",
        "url": "https://www.hepsiemlak.com/istanbul-kadikoy-rasimpasa-satilik/daire/114422-33",
        "listing_type": "sale",
        "listing_type_label": "Satılık",
        "property_class": "Konut",
        "property_type": "Daire",
        "price": 7100000,
        "currency": "TRY",
        "price_per_sqm": 78889,
        "area": {
          "gross_sqm": 90,
          "net_sqm": 80
        },
        "rooms": "3+1",
        "bedrooms": 3,
        "floor": "Yüksek Giriş",
        "building_age": 40,
        "deed_type": "Kat Mülkiyeti",
        "location": {
          "city": "İstanbul",
          "county": "Kadıköy",
          "district": "Rasimpaşa"
        },
        "images": [
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/5/9/8/4/4/7/4/1791629259882-47448950.jpg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/5/9/8/4/4/7/4/1791629259988-47448950.jpg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/5/9/8/4/4/7/4/1791629260027-47448950.jpg"
        ],
        "has_video": false,
        "has_virtual_tour": false,
        "has_video_call": true,
        "created_at": "2026-10-10T10:45:31Z",
        "updated_at": "2026-11-10T07:41:13Z",
        "agency": {
          "id": 114422,
          "name": "Ermek Emlak",
          "short_name": "Ermek Emlak",
          "logo": "https://hecdn01.hemlak.com/mnresize/120/90/assets/useravatar.png",
          "branded_logo": "https://hecdn01.hemlak.com/mnresize/120/90/assets/useravatar.png",
          "phones": [
            "…",
            "…"
          ]
        },
        "agent": {
          "id": 2466733,
          "name": "Ali Ermek",
          "phones": [
            "…",
            "…"
          ]
        },
        "is_shared": true,
        "identification_number": "1234abcd"
      },
      {
        "id": "2137-28913",
        "title": "Hasanpaşanın Kalbinde 3+1 Yenilenmiş Fırsat Daire",
        "url": "https://www.hepsiemlak.com/istanbul-kadikoy-hasanpasa-satilik/daire/2137-28913",
        "listing_type": "sale",
        "listing_type_label": "Satılık",
        "property_class": "Konut",
        "property_type": "Daire",
        "price": 7500000,
        "currency": "TRY",
        "price_per_sqm": 71429,
        "area": {
          "gross_sqm": 105,
          "net_sqm": 80
        },
        "rooms": "3+1",
        "bedrooms": 3,
        "floor": "En Üst Kat",
        "building_age": 37,
        "deed_type": "Kat İrtifakı",
        "location": {
          "city": "İstanbul",
          "county": "Kadıköy",
          "district": "Hasanpaşa"
        },
        "images": [
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/2/8/8/6/3/7/4/1790416725-1391978-47368820.jpeg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/2/8/8/6/3/7/4/1790416726-049118-47368820.jpeg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/0/2/8/8/6/3/7/4/1790416726-8973331-47368820.jpeg"
        ],
        "has_video": true,
        "has_virtual_tour": false,
        "has_video_call": false,
        "created_at": "2026-09-26T09:57:07Z",
        "updated_at": "2026-09-26T10:08:23Z",
        "agency": {
          "id": 2137,
          "name": "REMAX YILDIZ",
          "short_name": "REMAX YILDIZ",
          "logo": "https://hecdn01.hemlak.com/mnresize/120/90/logo/7/3/1/2/0/0/f660d663-09e2-444d-a6b5-d72dd2c13745.png",
          "branded_logo": "https://hecdn01.hemlak.com/mnresize/120/90/logo/7/3/1/2/0/0/c6937f24-6fb9-4e21-88d8-ef8ea80d25c2.jpg",
          "phones": [
            "…"
          ]
        },
        "agent": {
          "id": 4765986,
          "name": "CANSU ÖLMEZ",
          "photo": "https://hecdn01.hemlak.com/firmuser/6/8/9/5/6/7/4/ec32906b-4750-46b1-841d-7d0620ddeb94.jpg",
          "phones": [
            "…"
          ]
        },
        "is_shared": true,
        "identification_number": "1234abcd"
      },
      {
        "id": "0-38440074",
        "title": "Kadıköyde Satılık 3+1 Daire",
        "url": "https://www.hepsiemlak.com/istanbul-kadikoy-hasanpasa-satilik/daire/0-38440074",
        "listing_type": "sale",
        "listing_type_label": "Satılık",
        "property_class": "Konut",
        "property_type": "Daire",
        "price": 7900000,
        "currency": "TRY",
        "price_per_sqm": 62698,
        "area": {
          "gross_sqm": 126,
          "net_sqm": 95
        },
        "rooms": "3+1",
        "bedrooms": 3,
        "floor": "4",
        "building_age": 44,
        "deed_type": "Kat Mülkiyeti",
        "location": {
          "city": "İstanbul",
          "county": "Kadıköy",
          "district": "Hasanpaşa"
        },
        "images": [
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/4/7/0/0/4/4/8/3/jUZjnv35mJXZhxxHS-dSc.jpg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/4/7/0/0/4/4/8/3/Iei0Lr9zYAcYRBejCygPR.jpg",
          "https://hecdn01.hemlak.com/mncropresize/800/600/ds01/4/7/0/0/4/4/8/3/m54EthScjlJZptfdEsmvg.jpg"
        ],
        "has_video": true,
        "has_virtual_tour": false,
        "has_video_call": true,
        "created_at": "2022-02-22T14:36:30Z",
        "updated_at": "2026-11-01T08:24:46Z",
        "agent": {
          "id": 3251834,
          "name": "aydın yüksel",
          "phones": [
            "…"
          ]
        },
        "is_shared": false,
        "identification_number": "1234abcd"
      }
    ]
  },
  "meta": {
    "endpoint_family": "search",
    "request_id": "req_dc97c484d27f422fb5d41da9c8931275",
    "credits_charged": 1,
    "credits_remaining": 1865
  }
}
200 OKJSONX-Credits-Used: 1
Recorded from our API and shortened.

Sample data

What one call returns

A recorded run of search: the fields and shapes you will get, shortened to 3 items.

#idstringtitlestringurlurllisting_typestringlisting_type_labelstringproperty_classstringproperty_typestringpriceintegercurrencystringprice_per_sqmintegerareaobjectroomsstringbedroomsintegerfloorstringbuilding_ageintegerdeed_typestringlocationobjectimagesstring[]has_videobooleanhas_virtual_tourbooleanhas_video_callbooleancreated_atstringupdated_atstringagencyobjectagentobjectis_sharedbooleanidentification_numberstring
1114422-33KADIKÖY MERKEZDE BAKIMLI TEMİZ BOŞ TESLİM 3+1https://www.hepsiemlak.com/istanbul-kadikoy-rasimpasa-satilik/daire/114422-33saleSatılıkKonutDaire7100000TRY78889{2 fields}3+13Yüksek Giriş40Kat Mülkiyeti{3 fields}[3 items]falsefalsetrue2026-10-10T10:45:31Z2026-11-10T07:41:13Z{6 fields}{3 fields}true1234abcd
22137-28913Hasanpaşanın Kalbinde 3+1 Yenilenmiş Fırsat Dairehttps://www.hepsiemlak.com/istanbul-kadikoy-hasanpasa-satilik/daire/2137-28913saleSatılıkKonutDaire7500000TRY71429{2 fields}3+13En Üst Kat37Kat İrtifakı{3 fields}[3 items]truefalsefalse2026-09-26T09:57:07Z2026-09-26T10:08:23Z{6 fields}{4 fields}true1234abcd
30-38440074Kadıköyde Satılık 3+1 Dairehttps://www.hepsiemlak.com/istanbul-kadikoy-hasanpasa-satilik/daire/0-38440074saleSatılıkKonutDaire7900000TRY62698{2 fields}3+13444Kat Mülkiyeti{3 fields}[3 items]truefalsetrue2022-02-22T14:36:30Z2026-11-01T08:24:46Z—{3 fields}false1234abcd

Recorded from our API · 3 items shown · 27 datapoints per itemGET /v1/hepsiemlak/search?listing_type=sale&city=istanbul&county[]=kadikoy&rooms[]=3%2B1&sort=price_asc&price_min=5000000&price_max=9000000

27 datapoints

Identity

  • idstring
  • titlestring
  • listing_typestring
  • listing_type_labelstring
  • property_typestring
  • deed_typestring
  • identification_numberstring

Contact

  • urlurl
  • agentobject

Location

  • areaobject
  • locationobject

Reputation

  • imagesstring[]

Price

  • priceinteger
  • currencystring
  • price_per_sqminteger

Other

  • property_classstring
  • roomsstring
  • bedroomsinteger
  • floorstring
  • building_ageinteger
  • has_videoboolean
  • has_virtual_tourboolean
  • has_video_callboolean
  • created_atstring
  • updated_atstring
  • agencyobject
  • is_sharedboolean

Playground

Run this API

cURLshell
curl "https://api.perceptlayer.com/v1/hepsiemlak/search?listing_type=sale&city=istanbul&county[]=kadikoy&rooms[]=3%2B1&sort=price_asc&price_min=5000000&price_max=9000000" \
  -H "X-API-Key: $API_KEY"

Hepsiemlak · 13 endpoints

Endpoints

Every endpoint takes the same key. Open one for its parameters and an example request.

EndpointRequired parametersCost
GET/v1/hepsiemlak/agency
agency_id+4 optional
1 credit
GET/v1/hepsiemlak/agency-licence
agency_id
1 credit
GET/v1/hepsiemlak/autocomplete
query+2 optional
1 credit
GET/v1/hepsiemlak/filters
none+4 optional
1 credit
GET/v1/hepsiemlak/listing
id
1 credit
GET/v1/hepsiemlak/listings
none+2 optional
1 credit
GET/v1/hepsiemlak/locations
none+2 optional
1 credit
GET/v1/hepsiemlak/map
top_leftbottom_right+36 optional
1 credit
GET/v1/hepsiemlak/price-index
city_id+2 optional
1 credit
GET/v1/hepsiemlak/project
id
1 credit
GET/v1/hepsiemlak/projects
none+4 optional
1 credit
GET/v1/hepsiemlak/search
none+37 optional
1 credit
GET/v1/hepsiemlak/similar
id
1 credit

Overview

About the Hepsiemlak API

What you can get

The Hepsiemlak API returns Turkish property data from Hepsiemlak as JSON through 13 endpoints. search, map, filters and agency take a property_class (housing, commercial, land, timeshare or tourist) and a listing_type (sale, rent, seasonal_rent, transfer_sale, transfer_rent or swap_sale).

  • Search: search takes a city and repeatable county[], district[], property_type[] (daire, villa, mustakil-ev, residence, ofis, tarla and more), rooms[], bathrooms[], area[], building_age[], floors[], heating[], owner_type[] (owner, agency or bank), usage_status[] (empty, tenant, owner or unknown) and media[] (video, video_call or virtual_tour), with listing_date (today, last_3_days, last_week, last_15_days, last_month or last_2_months), furnish_status (furnished or unfurnished), keyword, agency_id, price_min, price_max, area_min, area_max, net_area_min, net_area_max, yes/no filters such as balcony, elevator, parking and loan_eligible, sort (relevance, price_asc, price_desc, updated_desc, updated_asc, created_desc or created_asc), page and per_page. map takes the same filters inside a top_left and bottom_right box; filters takes property_class, listing_type, city and county[].
  • Listings: listing and similar take an id; listings takes a repeatable ids[], with with_description.
  • Projects: projects takes a city and county[], with page and per_page; project takes an id.
  • Agencies: agency takes an agency_id, with property_class, listing_type, page and per_page; agency-licence takes an agency_id.
  • Locations and prices: locations takes a city_id or county_id; autocomplete takes a query, with a repeatable types[] (location or agency) and limit; price-index takes a city_id, with county_id and district_id.

The recorded search for 3+1 homes for sale in Kadıköy, Istanbul between 5,000,000 and 9,000,000 TRY, cheapest first, returns data.items, each with id, title, url, listing_type, property_class, property_type, price, currency, price_per_sqm, area (gross_sqm and net_sqm), rooms, bedrooms, floor, building_age, deed_type, location, images, created_at, updated_at, agency and agent. It also returns pagination with total (11), total_pages and returned, and applied_filters.

How a call works

Search a district: GET /v1/hepsiemlak/search?listing_type=sale&city=istanbul&county[]=kadikoy&rooms[]=3%2B1&sort=price_asc&price_min=5000000&price_max=9000000 with your key in the X-API-Key header. Each item's id goes to listing or similar, or several at once to listings as ids[]; its agency carries the id that agency and agency-licence take as agency_id. Every successful call costs 1 credit; failed calls cost nothing.

Real estateJSONRESTMCP

More real estate APIs

Use cases

Track asking prices and `price_per_sqm` by Istanbul district

Use the Hepsiemlak API to track asking prices and `price_per_sqm` by Istanbul district

Follow price trends for a city, county or district with `price-index`

Use the Hepsiemlak API to follow price trends for a city, county or district with `price-index`

Map listings inside a bounding box with `map`

Use the Hepsiemlak API to map listings inside a bounding box with `map`

Watch new-build projects with `projects` and `project`

Use the Hepsiemlak API to watch new-build projects with `projects` and `project`

FAQ

Questions

Do I need a Hepsiemlak account?

No. You call this Hepsiemlak API with your Perceptlayer key in the `X-API-Key` header, with no Hepsiemlak login.

How much does the Hepsiemlak API cost?

Each successful call costs one credit. New accounts get free credits to start, and credit packs bring the price down as you scale.

What format are responses in?

Every endpoint returns JSON, with no HTML parsing on your side.

How do I pass several districts or room counts?

Repeat the param once per value, for example `county[]=kadikoy` and `rooms[]=3%2B1` (3+1, with the plus sign URL-encoded). The same goes for every array param, including `ids[]` on `listings`.

Should I build a Hepsiemlak scraper instead?

You can, but a Hepsiemlak scraper is code you maintain: page changes break it, requests get blocked, and Hepsiemlak's terms govern how you collect data. The Hepsiemlak API gives you 13 endpoints of named JSON fields for 1 credit per successful call, and failed calls cost nothing. A scraper makes sense only for data these endpoints don't return, so check the response in the playground on this page first.

Try the Hepsiemlak API with 100 free credits

No credit card. Failed calls are never billed.