{
  "openapi": "3.0.1",
  "info": {
    "title": "Apartments.com Scraper with Agents | $1 / 1k",
    "description": "Extract structured US rental listings from Apartments.com with pricing, addresses, contact data, amenities, media, and more. Built for enterprise-grade rental market intelligence, lead enrichment, inventory monitoring, and automated analytics pipelines.",
    "version": "0.0",
    "x-build-id": "6GeZyoe3Fs6YxQOfB"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fatihtahta~apartments-com-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fatihtahta-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/fatihtahta~apartments-com-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fatihtahta-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/fatihtahta~apartments-com-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fatihtahta-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": {
          "location": {
            "title": "Add Locations to Search",
            "minItems": 1,
            "type": "array",
            "description": "Enter one or more places, such as \"Austin, TX\", \"Downtown Chicago\", or a ZIP code. Use separate entries when you want results grouped and limited per search area.",
            "items": {
              "type": "string"
            }
          },
          "limit": {
            "title": "Limit Results per Location",
            "minimum": 1,
            "type": "integer",
            "description": "Set the maximum number of listings to save for each location search. Leave this empty when you want the actor to collect all matching listings it can reach."
          },
          "min_price": {
            "title": "Set the Lowest Monthly Rent",
            "minimum": 1,
            "type": "integer",
            "description": "Include listings whose advertised rent is at or above this amount. Leave this empty if lower-priced listings should remain in the results."
          },
          "max_price": {
            "title": "Set the Highest Monthly Rent",
            "minimum": 1,
            "type": "integer",
            "description": "Include listings whose advertised rent is at or below this amount. Leave this empty if higher-priced listings should remain in the results."
          },
          "min_area": {
            "title": "Set the Smallest Unit Size",
            "minimum": 1,
            "type": "integer",
            "description": "Include listings with at least this much advertised living area. Leave this empty when smaller units should still be collected."
          },
          "max_area": {
            "title": "Set the Largest Unit Size",
            "minimum": 1,
            "type": "integer",
            "description": "Include listings with no more than this much advertised living area. Leave this empty when larger units should still be collected."
          },
          "min_bedroom": {
            "title": "Choose the Fewest Bedrooms",
            "enum": [
              "studio",
              "1",
              "2",
              "3",
              "4+"
            ],
            "type": "string",
            "description": "Include listings with this bedroom count or more. Leave this empty if studios or smaller layouts should remain eligible."
          },
          "max_bedroom": {
            "title": "Choose the Most Bedrooms",
            "enum": [
              "studio",
              "1",
              "2",
              "3",
              "4+"
            ],
            "type": "string",
            "description": "Include listings with this bedroom count or fewer. Leave this empty if larger homes should remain eligible."
          },
          "min_bathroom": {
            "title": "Choose the Fewest Bathrooms",
            "enum": [
              "1+",
              "2+",
              "3+"
            ],
            "type": "string",
            "description": "Include listings with this many bathrooms or more. Leave this empty if bathroom count should not affect the search."
          },
          "property_type": {
            "title": "Choose Property Types",
            "uniqueItems": true,
            "type": "array",
            "description": "Select one or more categories to include in the search. Leave this empty to collect listings from all supported property types in the selected locations.",
            "items": {
              "type": "string",
              "enum": [
                "apartments",
                "houses",
                "condos",
                "townhomes"
              ],
              "enumTitles": [
                "Apartments",
                "Houses",
                "Condos",
                "Townhomes"
              ]
            }
          },
          "property_style": {
            "title": "Choose a Property Style",
            "enum": [
              "duplex",
              "new_construction",
              "under_50_units"
            ],
            "type": "string",
            "description": "Select one style when you want the dataset to focus on that listing format. Leave this empty to keep all available property styles in scope."
          },
          "keyword": {
            "title": "Search by Keyword",
            "type": "string",
            "description": "Enter a word or short phrase, such as \"garage\", \"washer dryer\", or \"utilities included\". Leave this empty when keyword matching is not needed."
          },
          "housing_type": {
            "title": "Choose a Housing Type",
            "enum": [
              "student",
              "senior",
              "military",
              "corporate",
              "none"
            ],
            "type": "string",
            "description": "Select the housing category that should guide the search. Choose None, or leave this empty, when you want regular listings without a specialized housing filter."
          },
          "short_term_duration": {
            "title": "Choose a Short-Term Lease Length",
            "enum": [
              "all_short_term",
              "1_2_months",
              "3_4_months",
              "5_6_months"
            ],
            "type": "string",
            "description": "Select the short-term lease duration you want to target. Leave this empty when standard lease listings should remain included."
          },
          "move_in_date": {
            "title": "Set a Move-In Date",
            "type": "string",
            "description": "Choose the date you want to move in. Leave this empty when you are browsing generally or do not want availability timing to narrow the dataset."
          },
          "pet_friendly": {
            "title": "Choose Pet-Friendly Listings",
            "enum": [
              "dog_friendly",
              "cat_friendly",
              "dog_and_cat_allowed"
            ],
            "type": "string",
            "description": "Select the pet policy that listings must support. Leave this empty if pet rules should not affect the search."
          },
          "min_renter_rating": {
            "title": "Set a Minimum Renter Rating",
            "uniqueItems": true,
            "type": "array",
            "description": "Choose the lowest rating threshold that listings should meet, such as 4 or 5 stars. Leave this empty if renter ratings should not narrow the search.",
            "items": {
              "type": "string",
              "enum": [
                "4",
                "5"
              ],
              "enumTitles": [
                "4",
                "5"
              ]
            }
          },
          "is_income_restricted": {
            "title": "Show Income-Restricted Listings Only",
            "type": "boolean",
            "description": "Enable this to collect only listings labeled as income restricted. Leave it off to include both standard and income-restricted listings."
          },
          "is_accepting_online_applications": {
            "title": "Show Listings with Online Applications",
            "type": "boolean",
            "description": "Enable this to collect only listings that support online applications. Leave it off when the application method is not important."
          },
          "has_move_in_specials": {
            "title": "Show Listings with Move-In Specials",
            "type": "boolean",
            "description": "Enable this to collect only listings that mention move-in specials or introductory offers. Leave it off to include listings with or without promotions."
          },
          "is_for_rent_by_owner": {
            "title": "Show For-Rent-by-Owner Listings",
            "type": "boolean",
            "description": "Enable this to collect only listings marked as for rent by owner. Leave it off to include both owner-listed and professionally managed rentals."
          },
          "is_room_for_rent": {
            "title": "Show Rooms for Rent",
            "type": "boolean",
            "description": "Enable this to collect listings for individual rooms in shared homes or apartments. Leave it off to include complete units as well as room listings."
          },
          "maximize_coverage": {
            "title": "Collect More Matching Listings",
            "type": "boolean",
            "description": "Keep this enabled for broad searches where Apartments.com may not expose every matching listing in one result window. Turn it off for faster samples or tightly filtered searches where standard collection is enough.",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}