{
  "openapi": "3.0.1",
  "info": {
    "title": "Bayut Scraper | $0.7 / 1k | Listing & Agent",
    "description": "Extract structured Real estate property and agency data from Bayut including prices, locations, bedrooms, contact details, listing metadata and more. Built for enterprise-grade UAE real estate intelligence, lead generation, rental tracking, and automated analytics pipelines.",
    "version": "0.1",
    "x-build-id": "qvjPgVBSmJvzXzeDM"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fatihtahta~Bayut-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fatihtahta-Bayut-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/fatihtahta~Bayut-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fatihtahta-Bayut-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/fatihtahta~Bayut-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fatihtahta-Bayut-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": {
          "deal_type": {
            "title": "Listing type",
            "enum": [
              "for_sale",
              "for_rent"
            ],
            "type": "string",
            "description": "Choose whether to collect properties for sale or properties for rent. Leave the default sale option when you are researching purchase listings."
          },
          "location": {
            "title": "Location name",
            "type": "string",
            "description": "Enter a Bayut location such as Dubai Marina, Business Bay, Jumeirah Village Circle, or Yas Island. Use this when you want listings from a specific area rather than a broad market-wide run."
          },
          "min_price": {
            "title": "Minimum price",
            "minimum": 0,
            "type": "number",
            "description": "Enter the lowest listing price you want to include. Use this when you want a cleaner view of mid-market, premium, or luxury inventory."
          },
          "max_price": {
            "title": "Maximum price",
            "minimum": 0,
            "type": "number",
            "description": "Enter the highest listing price you want to include. Pair it with the minimum price to focus the run on a specific pricing band."
          },
          "residential_property_type": {
            "title": "Property categories",
            "uniqueItems": true,
            "type": "array",
            "description": "Select one or more residential property types such as apartments, villas, townhouses, or penthouses. Leave this empty if you want a broader mix of residential listings.",
            "items": {
              "type": "string",
              "enum": [
                "apartment",
                "townhouse",
                "villa_compound",
                "land",
                "building",
                "villa",
                "penthouse",
                "hotel_apartment",
                "floor"
              ],
              "enumTitles": [
                "Apartment",
                "Townhouse",
                "Villa Compound",
                "Land",
                "Building",
                "Villa",
                "Penthouse",
                "Hotel Apartment",
                "Floor"
              ]
            }
          },
          "commercial_property_type": {
            "title": "Commercial property categories",
            "uniqueItems": true,
            "type": "array",
            "description": "Select one or more commercial property types such as offices, warehouses, shops, or commercial land. If both residential and commercial property filters are selected, the actor will split the run into separate residential and commercial searches automatically.",
            "items": {
              "type": "string",
              "enum": [
                "office",
                "warehouse",
                "villa",
                "land",
                "building",
                "industrial_land",
                "showroom",
                "shop",
                "labour_camp",
                "bulk_unit",
                "floor",
                "factory",
                "mixed_use_land",
                "other_commercial"
              ],
              "enumTitles": [
                "Office",
                "Warehouse",
                "Villa",
                "Land",
                "Building",
                "Industrial Land",
                "Showroom",
                "Shop",
                "Labour Camp",
                "Bulk Unit",
                "Floor",
                "Factory",
                "Mixed Use Land",
                "Other Commercial"
              ]
            }
          },
          "rent_frequency": {
            "title": "Rental frequency",
            "enum": [
              "yearly",
              "monthly",
              "weekly",
              "daily",
              "any"
            ],
            "type": "string",
            "description": "Select yearly, monthly, weekly, or daily to target a specific rental model, or keep Any to include all rental frequencies. This setting is ignored for sale listings."
          },
          "bedroom_count": {
            "title": "Bedrooms",
            "uniqueItems": true,
            "type": "array",
            "description": "Choose one or more bedroom counts, including Studio where relevant. This is helpful for pricing comparisons, inventory snapshots, and focused property research.",
            "items": {
              "type": "string",
              "enum": [
                "studio",
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8_plus"
              ],
              "enumTitles": [
                "Studio",
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8+"
              ]
            }
          },
          "bathroom_count": {
            "title": "Bathrooms",
            "uniqueItems": true,
            "type": "array",
            "description": "Choose one or more bathroom counts to narrow the listings to your preferred layout range. This is useful for valuation work, rental comparisons, and shortlist building.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6_plus"
              ],
              "enumTitles": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6+"
              ]
            }
          },
          "min_area": {
            "title": "Minimum area (sq ft)",
            "minimum": 0,
            "type": "number",
            "description": "Enter the smallest property size to include, in square feet. Leave empty if you do not want a minimum size filter."
          },
          "max_area": {
            "title": "Maximum area (sq ft)",
            "minimum": 0,
            "type": "number",
            "description": "Enter the largest property size to include, in square feet. Use this together with the minimum area to keep the results within a target size band."
          },
          "developer": {
            "title": "Developer name",
            "type": "string",
            "description": "Enter a developer name such as Emaar, DAMAC, or Binghatti to focus the results on listings tied to that developer. Leave empty to include all developers."
          },
          "agent": {
            "title": "Agent or agency names",
            "type": "array",
            "description": "Add one or more Bayut agent or agency names to narrow the run to those sellers. This is useful for broker research, agency tracking, and competitor analysis.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Enter words or short phrases such as furnished, waterfront, off-plan, payment plan, corner unit, or ready to move. Use keywords when location and filter selections are not specific enough on their own.",
            "items": {
              "type": "string"
            }
          },
          "with_floor_plans": {
            "title": "Only with floor plans",
            "type": "boolean",
            "description": "Enable this option to keep only listings that include floor plan information. Leave it off if floor plans are optional for your use case."
          },
          "search_agents": {
            "title": "Search agents instead of listings",
            "type": "boolean",
            "description": "Enable this to switch the actor into agent search mode. When enabled, the listing search parameters are ignored and the dedicated agent-search flow is used."
          },
          "agents_type": {
            "title": "Choose whether the dedicated agent mode should return individual agents or agencies",
            "enum": [
              "agents",
              "agencies"
            ],
            "type": "string",
            "description": "Select Search for Agents to collect individual broker profiles, or Search for Agencies to collect agency profiles instead. Agent search is the default."
          },
          "agents_location": {
            "title": "Enter an agent search location. Use this when search_agents is enabled and you want Bayut agents for a specific city, district, or community",
            "type": "string",
            "description": "Enter a Bayut location such as Dubai, Palm Jumeirah, or Business Bay. The actor resolves this location first, then uses the agent-search flow for that area."
          },
          "limit": {
            "title": "Maximum listings to save",
            "minimum": 1,
            "type": "integer",
            "description": "Set the maximum number of listings to save for each search input. Choose a smaller number for testing or quick spot checks, and a larger number when you want a broader market snapshot."
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}