{
  "openapi": "3.0.1",
  "info": {
    "title": "Zigbang Scraper: Korean Rentals, Jeonse, Sales & Agents",
    "description": "Scrape Zigbang (직방), South Korea's rental app: one-room, villa and officetel listings for monthly rent, jeonse and sale in Seoul, Busan, Gyeonggi and all of Korea, with KRW prices, area, floor, GPS, address, photos, subway access and the licensed agent's contacts. No login.",
    "version": "0.1",
    "x-build-id": "J6Qei0VmSz9d4J57w"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/oswaldocarabano~zigbang-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-oswaldocarabano-zigbang-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/oswaldocarabano~zigbang-scraper/runs": {
      "post": {
        "operationId": "runs-sync-oswaldocarabano-zigbang-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/oswaldocarabano~zigbang-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-oswaldocarabano-zigbang-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": {
          "outputType": {
            "title": "What to collect",
            "enum": [
              "listings",
              "agents"
            ],
            "type": "string",
            "description": "Listings = one row per property listing (default). Agents = one row per licensed real-estate agent publishing in the area, ranked by how many listings they have there, with office, phones, email and registration numbers. One row type per run.",
            "default": "listings"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "Where to search, resolved with Zigbang's own place search. Korean names work best: a district (마포구), neighbourhood (역삼동) or subway station (강남역). Common English names are translated for you: Seoul, Busan, Gyeonggi, Haeundae, Gangnam-gu, Mapo-gu, Hongdae, Jamsil and the other Seoul districts. Empty = Gangnam-gu. Ignored when latitude and longitude are set."
          },
          "radiusKm": {
            "title": "Radius (km)",
            "minimum": 0.2,
            "maximum": 20,
            "type": "number",
            "description": "Listings within this distance of the location's centre. Measured 23 Sep 2026 with all three property types: 310 listings within 1.5 km of the Gangnam-gu centre, 475 within 1.5 km of Hongik University station (Hongdae).",
            "default": 1.5
          },
          "latitude": {
            "title": "Latitude (optional)",
            "type": "number",
            "description": "Search around exact coordinates instead of a place name. Set both latitude and longitude, inside South Korea."
          },
          "longitude": {
            "title": "Longitude (optional)",
            "type": "number",
            "description": "Longitude of the search centre. Used only together with latitude."
          },
          "propertyTypes": {
            "title": "Property types",
            "type": "array",
            "description": "One-room = studios and small flats (원룸, rentals only). Villa = low-rise multi-unit houses (빌라/투룸+). Officetel = studio-office buildings (오피스텔). Apartments (아파트) are not included. Leave empty for all three.",
            "items": {
              "type": "string",
              "enum": [
                "oneroom",
                "villa",
                "officetel"
              ],
              "enumTitles": [
                "One-room (원룸)",
                "Villa / two-room+ (빌라)",
                "Officetel (오피스텔)"
              ]
            }
          },
          "dealTypes": {
            "title": "Deal types",
            "type": "array",
            "description": "Monthly rent (월세) = deposit plus monthly rent. Jeonse (전세) = a large lump-sum deposit and no monthly rent. Sale (매매) = purchase price (villas and officetels only). Leave empty for all three.",
            "items": {
              "type": "string",
              "enum": [
                "monthly_rent",
                "jeonse",
                "sale"
              ],
              "enumTitles": [
                "Monthly rent (월세)",
                "Jeonse (전세)",
                "Sale (매매)"
              ]
            }
          },
          "maxItems": {
            "title": "Maximum rows",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Stop after this many rows (listings, or agents with outputType = agents).",
            "default": 100
          },
          "sortBy": {
            "title": "Order",
            "enum": [
              "newest",
              "nearest"
            ],
            "type": "string",
            "description": "Newest = highest listing id first (ids follow the registration date in 90% of pairs, measured). Nearest = closest to the location's centre first.",
            "default": "newest"
          },
          "includeDetails": {
            "title": "Add the detail page (extra charge)",
            "type": "boolean",
            "description": "Also fetch each listing's detail page: full description, every photo, furnishing options, bathrooms, orientation, parking, elevator, building type and approval date, parcel number (PNU), nearby subway stations and amenities, apartment complex, and the licensed agent's name, office, phones, email and registration numbers. One extra request per listing, charged as a separate event.",
            "default": false
          },
          "minDeposit": {
            "title": "Minimum deposit (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW, the way Zigbang shows prices: 1000 = 10,000,000 KRW. Applies to monthly-rent and jeonse listings."
          },
          "maxDeposit": {
            "title": "Maximum deposit (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW: 5000 = 50,000,000 KRW."
          },
          "minMonthlyRent": {
            "title": "Minimum monthly rent (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW: 50 = 500,000 KRW per month."
          },
          "maxMonthlyRent": {
            "title": "Maximum monthly rent (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW: 80 = 800,000 KRW per month."
          },
          "minSalePrice": {
            "title": "Minimum sale price (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW: 30000 = 300,000,000 KRW."
          },
          "maxSalePrice": {
            "title": "Maximum sale price (10,000 KRW / 만원)",
            "minimum": 0,
            "type": "integer",
            "description": "In units of 10,000 KRW: 60000 = 600,000,000 KRW."
          },
          "minSizeM2": {
            "title": "Minimum exclusive area (m²)",
            "minimum": 0,
            "type": "number",
            "description": "Exclusive (net) area in square metres."
          },
          "maxSizeM2": {
            "title": "Maximum exclusive area (m²)",
            "minimum": 0,
            "type": "number",
            "description": "Exclusive (net) area in square metres."
          },
          "includePrivateSellerContact": {
            "title": "Include contact of unregistered advertisers",
            "type": "boolean",
            "description": "Licensed agents' business phones and email are always included. Every advertiser measured was a registered broker (301 of 301 detail pages, 23 Sep 2026); if an advertiser without a broker registration number ever appears, their phones and email are removed unless you enable this. Enable only if you have a lawful basis to process private individuals' contact data.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Parallel requests",
            "minimum": 1,
            "maximum": 8,
            "type": "integer",
            "description": "How many requests run at once. 4 finished every test run cleanly; 6 in parallel were measured without a single refusal. Higher is faster but more likely to be slowed down by the site.",
            "default": 4
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Not needed: Zigbang answers without a proxy, and the actor switches to a Korean residential connection by itself if requests are ever refused. Set your own proxy only if you must; if it does not work, the run ends with an explanation and nothing is charged.",
            "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}