{
  "openapi": "3.0.1",
  "info": {
    "title": "Yandex Realty Listings Scraper",
    "description": "Collect property listings for sale and rent across 42 Russian markets. Every row carries asking price, price per square metre, rooms, areas, floor, address, coordinates, nearest metro and travel time, building year and whether the seller is an owner, an agency or a developer.",
    "version": "0.0",
    "x-build-id": "LFYyOoKq45T9CPjws"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/apt_marble~yandex-realty-listings-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-apt_marble-yandex-realty-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/apt_marble~yandex-realty-listings-scraper/runs": {
      "post": {
        "operationId": "runs-sync-apt_marble-yandex-realty-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/apt_marble~yandex-realty-listings-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-apt_marble-yandex-realty-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": {
          "region": {
            "title": "City or region",
            "enum": [
              "moskva",
              "moskovskaya_oblast",
              "sankt-peterburg",
              "leningradskaya_oblast",
              "novosibirsk",
              "ekaterinburg",
              "kazan",
              "nizhniy_novgorod",
              "chelyabinsk",
              "samara",
              "omsk",
              "rostov-na-donu",
              "ufa",
              "krasnoyarsk",
              "voronezh",
              "perm",
              "volgograd",
              "krasnodar",
              "sochi",
              "tyumen",
              "saratov",
              "vladivostok",
              "tolyatti",
              "izhevsk",
              "barnaul",
              "irkutsk",
              "habarovsk",
              "yaroslavl",
              "tula",
              "stavropol",
              "kaliningrad",
              "ryazan",
              "penza",
              "tver",
              "sevastopol",
              "simferopol",
              "kaluga",
              "kemerovo",
              "tomsk",
              "ulyanovsk",
              "lipetsk",
              "naberezhnye_chelny"
            ],
            "type": "string",
            "description": "The property market to collect. Every choice here is a market the source publishes listings for.",
            "default": "moskva"
          },
          "additionalRegions": {
            "title": "Additional cities",
            "type": "array",
            "description": "Optional. Collect these cities in the same run as well, each with its own limit. Leave empty to collect one city only.",
            "items": {
              "type": "string",
              "enum": [
                "moskva",
                "moskovskaya_oblast",
                "sankt-peterburg",
                "leningradskaya_oblast",
                "novosibirsk",
                "ekaterinburg",
                "kazan",
                "nizhniy_novgorod",
                "chelyabinsk",
                "samara",
                "omsk",
                "rostov-na-donu",
                "ufa",
                "krasnoyarsk",
                "voronezh",
                "perm",
                "volgograd",
                "krasnodar",
                "sochi",
                "tyumen",
                "saratov",
                "vladivostok",
                "tolyatti",
                "izhevsk",
                "barnaul",
                "irkutsk",
                "habarovsk",
                "yaroslavl",
                "tula",
                "stavropol",
                "kaliningrad",
                "ryazan",
                "penza",
                "tver",
                "sevastopol",
                "simferopol",
                "kaluga",
                "kemerovo",
                "tomsk",
                "ulyanovsk",
                "lipetsk",
                "naberezhnye_chelny"
              ],
              "enumTitles": [
                "Moscow",
                "Moscow Region",
                "Saint Petersburg",
                "Leningrad Region",
                "Novosibirsk",
                "Yekaterinburg",
                "Kazan",
                "Nizhny Novgorod",
                "Chelyabinsk",
                "Samara",
                "Omsk",
                "Rostov-on-Don",
                "Ufa",
                "Krasnoyarsk",
                "Voronezh",
                "Perm",
                "Volgograd",
                "Krasnodar",
                "Sochi",
                "Tyumen",
                "Saratov",
                "Vladivostok",
                "Tolyatti",
                "Izhevsk",
                "Barnaul",
                "Irkutsk",
                "Khabarovsk",
                "Yaroslavl",
                "Tula",
                "Stavropol",
                "Kaliningrad",
                "Ryazan",
                "Penza",
                "Tver",
                "Sevastopol",
                "Simferopol",
                "Kaluga",
                "Kemerovo",
                "Tomsk",
                "Ulyanovsk",
                "Lipetsk",
                "Naberezhnye Chelny"
              ]
            },
            "default": []
          },
          "dealType": {
            "title": "Listing type",
            "enum": [
              "buy",
              "rent"
            ],
            "type": "string",
            "description": "Collect properties offered for sale, or properties offered to rent.",
            "default": "buy"
          },
          "propertyType": {
            "title": "Property type",
            "enum": [
              "apartment",
              "room",
              "house",
              "land",
              "garage",
              "commercial"
            ],
            "type": "string",
            "description": "The kind of property to collect.",
            "default": "apartment"
          },
          "rooms": {
            "title": "Number of rooms",
            "type": "array",
            "description": "Optional. Keep only properties with these room counts. Applies to apartments and rooms — the source ignores a room filter on houses, land, garages and commercial property, so choosing one there stops the run instead of quietly returning every size. Leave empty for every size. The source groups everything from four rooms upward together, which is why the largest choice is \"4 or more\".",
            "items": {
              "type": "string",
              "enum": [
                "studio",
                "1",
                "2",
                "3",
                "4+"
              ],
              "enumTitles": [
                "Studio",
                "1 room",
                "2 rooms",
                "3 rooms",
                "4 or more rooms"
              ]
            },
            "default": []
          },
          "marketSegment": {
            "title": "Market segment",
            "enum": [
              "any",
              "newBuilding",
              "secondary"
            ],
            "type": "string",
            "description": "Optional. Separate newly built apartments from resale apartments. Available for apartments offered for sale.",
            "default": "any"
          },
          "ownersOnly": {
            "title": "Listed by owners only",
            "type": "boolean",
            "description": "Keep only properties the source shows as offered by the owner rather than by an agency, an agent or a developer.",
            "default": false
          },
          "priceMin": {
            "title": "Minimum price",
            "minimum": 0,
            "maximum": 100000000000,
            "type": "integer",
            "description": "Optional. Lowest asking price to include, in Russian roubles. For rentals this is the monthly rent."
          },
          "priceMax": {
            "title": "Maximum price",
            "minimum": 0,
            "maximum": 100000000000,
            "type": "integer",
            "description": "Optional. Highest asking price to include, in Russian roubles. For rentals this is the monthly rent."
          },
          "areaMin": {
            "title": "Minimum area",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Optional. Smallest total area to include. In square metres for apartments, rooms, houses, garages and commercial property — but in ares for land plots, because that is the unit this source measures ground in. One are is 100 m², so \"6\" on a land search means a 600 m² plot."
          },
          "areaMax": {
            "title": "Maximum area",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Optional. Largest total area to include. In square metres for apartments, rooms, houses, garages and commercial property — but in ares for land plots, because that is the unit this source measures ground in. One are is 100 m², so \"12\" on a land search means a 1,200 m² plot."
          },
          "floorMin": {
            "title": "Lowest floor",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Optional. Only include properties on this floor or above. Applies to apartments, rooms and commercial property."
          },
          "floorMax": {
            "title": "Highest floor",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Optional. Only include properties on this floor or below. Applies to apartments, rooms and commercial property."
          },
          "sortBy": {
            "title": "Sort results by",
            "enum": [
              "relevance",
              "priceAsc",
              "priceDesc",
              "newest",
              "largestArea"
            ],
            "type": "string",
            "description": "The order the source should return listings in. This changes which properties you see first when your limit is smaller than the market.",
            "default": "relevance"
          },
          "maxResultsPerCity": {
            "title": "Maximum listings per city",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "How many listings to collect for each city. The source hands over at most about 500 properties for any one search, and smaller markets stop below that, so narrow the search with price, area or room filters when you need more.",
            "default": 100
          },
          "parallelCities": {
            "title": "Cities at the same time",
            "minimum": 1,
            "maximum": 8,
            "type": "integer",
            "description": "How many cities to work through side by side. Raise it for a faster run across many cities, lower it for a gentler one.",
            "default": 3
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}