{
  "openapi": "3.0.1",
  "info": {
    "title": "Property Finder UAE Real Estate Listings Scraper",
    "description": "Property adverts across all eight UAE emirates: sale and rent, homes and commercial. Price, size, rooms, amenities, coordinates, full advert text, and the agent and agency behind each one. Switch on the listing page for the permit, licence numbers, full-size photos and floor plans.",
    "version": "0.1",
    "x-build-id": "tStqjpTm0H2CcbttN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/drramerets~propertyfinder-listings/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-drramerets-propertyfinder-listings",
        "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/drramerets~propertyfinder-listings/runs": {
      "post": {
        "operationId": "runs-sync-drramerets-propertyfinder-listings",
        "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/drramerets~propertyfinder-listings/run-sync": {
      "post": {
        "operationId": "run-sync-drramerets-propertyfinder-listings",
        "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": {
          "purpose": {
            "title": "Purpose",
            "type": "array",
            "description": "Keep only listings for sale or for rent. Leave empty to cover both.",
            "items": {
              "type": "string",
              "enum": [
                "for-sale",
                "for-rent"
              ],
              "enumTitles": [
                "For sale",
                "For rent"
              ]
            },
            "default": []
          },
          "segment": {
            "title": "Segment",
            "type": "array",
            "description": "Residential homes, commercial premises, or both. Leave empty to cover both.",
            "items": {
              "type": "string",
              "enum": [
                "residential",
                "commercial"
              ],
              "enumTitles": [
                "Residential",
                "Commercial"
              ]
            },
            "default": []
          },
          "propertyTypes": {
            "title": "Property types",
            "type": "array",
            "description": "Keep only these property types. Leave empty to cover all of them.",
            "items": {
              "type": "string",
              "enum": [
                "Apartment",
                "Villa",
                "Townhouse",
                "Penthouse",
                "Duplex",
                "Compound",
                "Bungalow",
                "Land",
                "Full Floor",
                "Half Floor",
                "Whole Building",
                "Bulk Sale Unit",
                "Bulk Rent Unit",
                "Hotel & Hotel Apartment",
                "Office Space",
                "Retail",
                "Shop",
                "Show Room",
                "Warehouse",
                "Factory",
                "Business Centre",
                "Co-working space",
                "Labor Camp",
                "Staff Accommodation",
                "Farm"
              ],
              "enumTitles": [
                "Apartment",
                "Villa",
                "Townhouse",
                "Penthouse",
                "Duplex",
                "Compound",
                "Bungalow",
                "Land",
                "Full floor",
                "Half floor",
                "Whole building",
                "Bulk sale unit",
                "Bulk rent unit",
                "Hotel and hotel apartment",
                "Office space",
                "Retail",
                "Shop",
                "Show room",
                "Warehouse",
                "Factory",
                "Business centre",
                "Co-working space",
                "Labour camp",
                "Staff accommodation",
                "Farm"
              ]
            },
            "default": []
          },
          "emirates": {
            "title": "Emirates",
            "type": "array",
            "description": "Limit results to these emirates. Leave empty to cover the whole of the UAE.",
            "items": {
              "type": "string",
              "enum": [
                "Dubai",
                "Abu Dhabi",
                "Sharjah",
                "Ajman",
                "Ras Al Khaimah",
                "Fujairah",
                "Umm Al Quwain",
                "Al Ain"
              ],
              "enumTitles": [
                "Dubai",
                "Abu Dhabi",
                "Sharjah",
                "Ajman",
                "Ras Al Khaimah",
                "Fujairah",
                "Umm Al Quwain",
                "Al Ain"
              ]
            },
            "default": []
          },
          "priceMin": {
            "title": "Minimum price, AED",
            "minimum": 0,
            "type": "integer",
            "description": "Lowest asking price to include. Listings published without a price are skipped when a price range is set."
          },
          "priceMax": {
            "title": "Maximum price, AED",
            "minimum": 0,
            "type": "integer",
            "description": "Highest asking price to include. For rentals this is the price as published, so compare like with like."
          },
          "areaMinSqft": {
            "title": "Minimum area, sqft",
            "minimum": 0,
            "type": "integer",
            "description": "Smallest built-up area to include, in square feet."
          },
          "areaMaxSqft": {
            "title": "Maximum area, sqft",
            "minimum": 0,
            "type": "integer",
            "description": "Largest built-up area to include, in square feet."
          },
          "completionStatus": {
            "title": "Completion status",
            "enum": [
              "",
              "completed",
              "off-plan"
            ],
            "type": "string",
            "description": "Ready properties or off-plan ones. Leave empty to cover both.",
            "default": ""
          },
          "furnishing": {
            "title": "Furnishing",
            "enum": [
              "",
              "furnished",
              "unfurnished",
              "partly-furnished"
            ],
            "type": "string",
            "description": "Keep only listings with this furnishing. Leave empty to cover all of them.",
            "default": ""
          },
          "listedWithinDays": {
            "title": "Listed within",
            "enum": [
              "",
              "1",
              "7",
              "15",
              "30",
              "90"
            ],
            "type": "string",
            "description": "Keep only listings published recently. Leave empty for listings of any age.",
            "default": ""
          },
          "keyword": {
            "title": "Keyword",
            "type": "string",
            "description": "Free-text search across listing titles and descriptions, for example a building or community name."
          },
          "maxItems": {
            "title": "Maximum listings",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Stop after this many listings. Keep it modest for a first trial run. With \"Read each listing's own page\" switched on, 5,000 is the most a single run can do.",
            "default": 1000
          },
          "includeDetails": {
            "title": "Read each listing's own page",
            "type": "boolean",
            "description": "Adds the advertising permit with the regulator that issued it and its validation link, the agent and agency licence numbers, full-size photos, floor plans, the zone name and the original-language text. This opens every listing's own page, so a run takes about ten times longer, is priced at double the rate per listing, and is capped at 5,000 listings — more than that does not fit into the one-hour run limit. For larger jobs, run it in several parts or leave this off.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxy used to reach the site. The default works for most runs; switch on a residential proxy if the site starts refusing requests.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}