{
  "openapi": "3.0.1",
  "info": {
    "title": "Houzz.com Scraper | All In One",
    "description": "Scrape Houzz at scale including all categories (photos, pros, stories and discussions) with reviews, phones, addresses, budgets and more. Ideal for renovation research, pro directories, lead gen and design trend tracking.",
    "version": "0.0",
    "x-build-id": "eibeRYXA2GOFJhzIr"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fatihtahta~houzz-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fatihtahta-houzz-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~houzz-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fatihtahta-houzz-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~houzz-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fatihtahta-houzz-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": {
          "startUrls": {
            "title": "Enter Houzz search, category, or individual listing URLs to scrape",
            "type": "array",
            "description": "Paste one or more Houzz search result pages, style categories, or specific photo/pro/professional/story/discussion URLs to capture.",
            "items": {
              "type": "string"
            }
          },
          "queries": {
            "title": "Enter Houzz search queries to scrape",
            "type": "array",
            "description": "Add keywords such as \"modern kitchen\" or \"landscape architect\". Each query becomes a Houzz search and follows the chosen section below.",
            "items": {
              "type": "string"
            }
          },
          "queryType": {
            "title": "Select query type",
            "enum": [
              "photos",
              "professionals",
              "stories",
              "discussions"
            ],
            "type": "string",
            "description": "Pick which Houzz area to search when running keyword queries—photo inspiration, service providers, editorial stories, or community threads.",
            "default": "photos"
          },
          "styles": {
            "title": "Filter Photo results by style",
            "uniqueItems": true,
            "type": "array",
            "description": "Applies only when queryType is set to photos.",
            "items": {
              "type": "string",
              "enum": [
                "Contemporary",
                "Traditional",
                "Farmhouse",
                "Industrial",
                "Rustic",
                "Eclectic",
                "Tropical",
                "Asian",
                "Mediterranean",
                "Shabby-Chic Style",
                "Modern",
                "Mid-Century Modern",
                "Transitional",
                "Scandinavian",
                "Coastal",
                "Southwestern",
                "Craftsman",
                "Victorian",
                "French Country"
              ],
              "enumTitles": [
                "🏙️ Contemporary — sleek minimalism",
                "🏛️ Traditional — classic elegance",
                "🤠 Farmhouse — rustic comfort",
                "🏭 Industrial — raw textures",
                "🌲 Rustic — cozy timber vibes",
                "🎭 Eclectic — curated mix",
                "🌴 Tropical — breezy greenery",
                "🧘 Asian — serene balance",
                "🌅 Mediterranean — sunlit charm",
                "🧵 Shabby-Chic — vintage softness",
                "✨ Modern — clean lines",
                "🪑 Mid-Century Modern — retro simplicity",
                "🔄 Transitional — blended styles",
                "❄️ Scandinavian — airy warmth",
                "🏖️ Coastal — light and breezy",
                "🏜️ Southwestern — desert hues",
                "🛠️ Craftsman — handcrafted detail",
                "👑 Victorian — ornate drama",
                "🇫🇷 French Country — rustic romance"
              ]
            }
          },
          "budgets": {
            "title": "Filter Photo results by budget",
            "uniqueItems": true,
            "type": "array",
            "description": "Applies only when queryType is set to photos.",
            "items": {
              "type": "string",
              "enum": [
                "$",
                "$$",
                "$$$",
                "$$$$"
              ],
              "enumTitles": [
                "💡 $ — budget-friendly",
                "🌟 $$ — mid-range",
                "💎 $$$ — premium",
                "👑 $$$$ — luxury"
              ]
            }
          },
          "sizes": {
            "title": "Filter Photo results by size",
            "uniqueItems": true,
            "type": "array",
            "description": "Applies only when queryType is set to photos.",
            "items": {
              "type": "string",
              "enum": [
                "Compact",
                "Medium",
                "Large",
                "Expansive"
              ],
              "enumTitles": [
                "📏 Compact — small spaces",
                "📐 Medium — balanced fit",
                "🧭 Large — generous layouts",
                "🌐 Expansive — open and airy"
              ]
            }
          },
          "colors": {
            "title": "Filter Photo results by color",
            "uniqueItems": true,
            "type": "array",
            "description": "Applies only when queryType is set to photos.",
            "items": {
              "type": "string",
              "enum": [
                "Red",
                "Orange",
                "wood tones",
                "yellow",
                "blue",
                "green",
                "turqiuose",
                "violet",
                "Pink",
                "Black & white",
                "Black",
                "White",
                "Gray",
                "Beige",
                "Brown"
              ],
              "enumTitles": [
                "❤️ Red — bold energy",
                "🧡 Orange — warm glow",
                "🌳 Wood tones — natural warmth",
                "💛 Yellow — sunny brightness",
                "💙 Blue — calm coolness",
                "💚 Green — fresh and leafy",
                "🩵 Turquoise — coastal pop",
                "💜 Violet — rich accent",
                "💖 Pink — soft charm",
                "⚫⚪ Black & White — crisp contrast",
                "⚫ Black — dramatic depth",
                "⚪ White — clean clarity",
                "⬜ Gray — neutral balance",
                "🪨 Beige — warm neutral",
                "🤎 Brown — earthy comfort"
              ]
            }
          },
          "getContacts": {
            "title": "Enrich professional results with contact details",
            "type": "boolean",
            "description": "When enabled, the actor enriches each scraped record with additional contact signals such as public email addresses, phone numbers, and social profile links. Use this when you want more complete records for lead generation, outreach research, or CRM enrichment.",
            "default": false
          },
          "limit": {
            "title": "Maximum listings to collect",
            "minimum": 10,
            "type": "integer",
            "description": "Stop the run after this number of listings has been saved across each seed—ideal for sampling or capping costs.",
            "default": 50000
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Stay stable with Apify Residential proxies or plug in your own—perfect for smooth Houzz browsing.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": []
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}