{
  "openapi": "3.0.1",
  "info": {
    "title": "Sahibinden Real Estate Listings Scraper",
    "description": "Sahibinden real estate scraper — prices, rooms, sizes, GPS, photos, seller info, and phone numbers from sahibinden.com. All 81 Turkish cities, sale/rent/daily, residential to land. Cloudflare-bypassed via Unblocker, 25+ fields per listing, phone deobfuscation. JSON or CSV out.",
    "version": "0.0",
    "x-build-id": "c9LgNSK2kgouxmmmJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~sahibinden-real-estate-listings-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-sahibinden-real-estate-listings-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/memo23~sahibinden-real-estate-listings-scraper/runs": {
      "post": {
        "operationId": "runs-sync-memo23-sahibinden-real-estate-listings-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/memo23~sahibinden-real-estate-listings-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-sahibinden-real-estate-listings-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "listingType": {
            "title": "Listing Type",
            "enum": [
              "Sale",
              "Rent",
              "Daily Rental"
            ],
            "type": "string",
            "description": "Sale (Satilik) = properties for purchase. Rent (Kiralik) = monthly rentals. Daily Rental (Gunluk Kiralik) = short-term vacation stays.",
            "default": "Sale"
          },
          "propertyCategory": {
            "title": "Property Category",
            "enum": [
              "Residential",
              "Commercial",
              "Land",
              "Building"
            ],
            "type": "string",
            "description": "Residential = apartments, villas, houses. Commercial = offices, shops, warehouses. Land = plots and parcels. Building = whole buildings.",
            "default": "Residential"
          },
          "city": {
            "title": "City",
            "enum": [
              "",
              "Adana",
              "Adiyaman",
              "Afyonkarahisar",
              "Agri",
              "Aksaray",
              "Amasya",
              "Ankara",
              "Antalya",
              "Ardahan",
              "Artvin",
              "Aydin",
              "Balikesir",
              "Bartin",
              "Batman",
              "Bayburt",
              "Bilecik",
              "Bingol",
              "Bitlis",
              "Bolu",
              "Burdur",
              "Bursa",
              "Canakkale",
              "Cankiri",
              "Corum",
              "Denizli",
              "Diyarbakir",
              "Duzce",
              "Edirne",
              "Elazig",
              "Erzincan",
              "Erzurum",
              "Eskisehir",
              "Gaziantep",
              "Giresun",
              "Gumushane",
              "Hakkari",
              "Hatay",
              "Igdir",
              "Isparta",
              "Istanbul",
              "Istanbul (European)",
              "Istanbul (Asian)",
              "Izmir",
              "Kahramanmaras",
              "Karabuk",
              "Karaman",
              "Kars",
              "Kastamonu",
              "Kayseri",
              "Kilis",
              "Kirikkale",
              "Kirklareli",
              "Kirsehir",
              "Kocaeli",
              "Konya",
              "Kutahya",
              "Malatya",
              "Manisa",
              "Mardin",
              "Mersin",
              "Mugla",
              "Mus",
              "Nevsehir",
              "Nigde",
              "Ordu",
              "Osmaniye",
              "Rize",
              "Sakarya",
              "Samsun",
              "Sanliurfa",
              "Siirt",
              "Sinop",
              "Sirnak",
              "Sivas",
              "Tekirdag",
              "Tokat",
              "Trabzon",
              "Tunceli",
              "Usak",
              "Van",
              "Yalova",
              "Yozgat",
              "Zonguldak"
            ],
            "type": "string",
            "description": "Filter by Turkish city. Leave empty for all cities. Istanbul has 3 options: Istanbul (all), Istanbul (European), Istanbul (Asian).",
            "default": "Istanbul"
          },
          "district": {
            "title": "Districts",
            "type": "array",
            "description": "Narrow to one or more districts within the selected city. Enter district names (e.g. Bodrum, Marmaris). Multiple districts are combined (any match). Leave empty for the whole city.",
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "Newest",
              "Oldest",
              "Price Low to High",
              "Price High to Low",
              "Smart Sort"
            ],
            "type": "string",
            "description": "Sort order for search results.",
            "default": "Newest"
          },
          "extractPhoneNumbers": {
            "title": "Extract Phone Numbers",
            "type": "boolean",
            "description": "Extract seller phone numbers (mobile, home, work) for each listing. Add-on pricing applies per phone number extracted.",
            "default": true
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of listings to return. Set to 0 for unlimited.",
            "default": 100
          },
          "minPrice": {
            "title": "Min Price",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum listing price in the selected currency."
          },
          "maxPrice": {
            "title": "Max Price",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum listing price in the selected currency."
          },
          "currency": {
            "title": "Currency",
            "enum": [
              "TRY",
              "USD",
              "EUR",
              "GBP"
            ],
            "type": "string",
            "description": "Currency for min/max price filters. Only applies when a price range is set.",
            "default": "TRY"
          },
          "rooms": {
            "title": "Rooms",
            "type": "array",
            "description": "Filter by room count. Turkish format: 3+1 means 3 rooms + 1 living room. Select multiple to include all.",
            "items": {
              "type": "string",
              "enum": [
                "1+0",
                "1+1",
                "2+0",
                "2+1",
                "3+1",
                "3+2",
                "4+1",
                "4+2",
                "5+1",
                "5+2",
                "6+"
              ]
            }
          },
          "maxPages": {
            "title": "Max Pages",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of search-result pages to fetch. Each page yields ~20-50 listings. Leave empty for no limit (walk until results run out or maxResults is hit)."
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "One or more sahibinden.com search URLs to scrape directly (e.g. https://www.sahibinden.com/satilik-daire/istanbul-kadikoy). Overrides the city/district/category filters when provided.",
            "items": {
              "type": "string"
            }
          },
          "sessionCookies": {
            "title": "Session Cookies",
            "type": "string",
            "description": "Sahibinden requires login to view search results. Paste your browser session cookies here (from DevTools > Application > Cookies on www.sahibinden.com). Format: 'name=value; name2=value2'. Without valid cookies, the actor cannot retrieve listings."
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Must use Apify Unblocker or residential proxies — sahibinden.com is behind Cloudflare bot management. Direct datacenter requests are blocked."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}