{
  "openapi": "3.0.1",
  "info": {
    "title": "Apartments.com Scraper",
    "description": "Apartments.com scraper & API: search US rental listings by city or area and export address, rent price, beds, baths, square feet, amenities, pet policy, photos, contact phone, coordinates and availability. Rental market data and real-estate lead generation — fast, no login.",
    "version": "1.0",
    "x-build-id": "vwf0hmXbaZSvyndzP"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/haketa~apartments-com-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-haketa-apartments-com-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/haketa~apartments-com-scraper/runs": {
      "post": {
        "operationId": "runs-sync-haketa-apartments-com-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/haketa~apartments-com-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-haketa-apartments-com-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": {
          "citySelect": {
            "title": "Cities",
            "type": "array",
            "description": "Pick one or more US cities to scrape rental listings from. Leave empty to get a sample from popular cities across the country.",
            "items": {
              "type": "string",
              "enum": [
                "new-york-ny",
                "los-angeles-ca",
                "chicago-il",
                "houston-tx",
                "phoenix-az",
                "philadelphia-pa",
                "san-antonio-tx",
                "san-diego-ca",
                "dallas-tx",
                "austin-tx",
                "san-jose-ca",
                "fort-worth-tx",
                "jacksonville-fl",
                "columbus-oh",
                "charlotte-nc",
                "san-francisco-ca",
                "indianapolis-in",
                "seattle-wa",
                "denver-co",
                "washington-dc",
                "boston-ma",
                "nashville-tn",
                "las-vegas-nv",
                "portland-or",
                "oklahoma-city-ok",
                "atlanta-ga",
                "miami-fl",
                "orlando-fl",
                "tampa-fl",
                "minneapolis-mn",
                "raleigh-nc",
                "sacramento-ca",
                "kansas-city-mo",
                "pittsburgh-pa",
                "cincinnati-oh",
                "st-louis-mo",
                "salt-lake-city-ut",
                "baltimore-md",
                "detroit-mi",
                "buffalo-ny",
                "richmond-va"
              ],
              "enumTitles": [
                "New York, NY",
                "Los Angeles, CA",
                "Chicago, IL",
                "Houston, TX",
                "Phoenix, AZ",
                "Philadelphia, PA",
                "San Antonio, TX",
                "San Diego, CA",
                "Dallas, TX",
                "Austin, TX",
                "San Jose, CA",
                "Fort Worth, TX",
                "Jacksonville, FL",
                "Columbus, OH",
                "Charlotte, NC",
                "San Francisco, CA",
                "Indianapolis, IN",
                "Seattle, WA",
                "Denver, CO",
                "Washington, DC",
                "Boston, MA",
                "Nashville, TN",
                "Las Vegas, NV",
                "Portland, OR",
                "Oklahoma City, OK",
                "Atlanta, GA",
                "Miami, FL",
                "Orlando, FL",
                "Tampa, FL",
                "Minneapolis, MN",
                "Raleigh, NC",
                "Sacramento, CA",
                "Kansas City, MO",
                "Pittsburgh, PA",
                "Cincinnati, OH",
                "St. Louis, MO",
                "Salt Lake City, UT",
                "Baltimore, MD",
                "Detroit, MI",
                "Buffalo, NY",
                "Richmond, VA"
              ]
            }
          },
          "cities": {
            "title": "Other cities (advanced)",
            "type": "array",
            "description": "Optional. Add any US city not in the dropdown using the Apartments.com slug format, e.g. 'boise-id', 'madison-wi', 'ann-arbor-mi'. Combined with your dropdown selection.",
            "items": {
              "type": "string"
            }
          },
          "propertyType": {
            "title": "Property Type",
            "enum": [
              "all",
              "apartments",
              "houses",
              "condos",
              "townhomes"
            ],
            "type": "string",
            "description": "Type of rental to search for.",
            "default": "all"
          },
          "maxPrice": {
            "title": "Max Monthly Rent",
            "enum": [
              "0",
              "700",
              "1000",
              "1200",
              "1500",
              "2000",
              "2500",
              "3000"
            ],
            "type": "string",
            "description": "Only show listings at or below this monthly rent. Choose 'No limit' to include every price.",
            "default": "0"
          },
          "minBeds": {
            "title": "Minimum Bedrooms",
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4"
            ],
            "type": "string",
            "description": "Smallest number of bedrooms to include.",
            "default": "0"
          },
          "rentSpecialsOnly": {
            "title": "Rent Specials Only",
            "type": "boolean",
            "description": "Only include listings that currently advertise a promotion or move-in deal.",
            "default": false
          },
          "scrapeDetails": {
            "title": "Scrape Detail Pages",
            "type": "boolean",
            "description": "Also open each listing to collect floor plans, amenities, fees, pet policy and photos. Richer data, but slower and more expensive.",
            "default": false
          },
          "maxListings": {
            "title": "Max Listings",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum total listings to collect across all cities. Set 0 for unlimited.",
            "default": 0
          },
          "maxPages": {
            "title": "Max Pages per City",
            "minimum": 1,
            "type": "integer",
            "description": "How many result pages to read per city. Each page has roughly 20-25 listings.",
            "default": 20
          },
          "searchUrls": {
            "title": "Start URLs (advanced)",
            "type": "array",
            "description": "Optional. Paste ready-made Apartments.com search URLs to scrape them directly. When provided, the city and filter options above are ignored.",
            "items": {
              "type": "string"
            }
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Proxy settings. Residential proxies are recommended for reliable results."
          },
          "requestDelay": {
            "title": "Request Delay (ms)",
            "minimum": 0,
            "maximum": 15000,
            "type": "integer",
            "description": "Pause between requests, in milliseconds. Higher values are gentler and more reliable.",
            "default": 1500
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "How many requests run in parallel. Keep low for the most reliable results.",
            "default": 1
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}