{
  "openapi": "3.0.1",
  "info": {
    "title": "Naver Scraper API — Map, Shopping, Blog, News & Real Estate",
    "description": "All-in-one Naver scraper: Naver Map places with reviews, menus and busy hours, Naver Shopping products with sellers and reviews, Blog, Cafe, News with comments, Knowledge iN, SERP, real estate, webtoons, stocks and DataLab trends. Keywords or any Naver URL. No login or API key.",
    "version": "1.0",
    "x-build-id": "fYL6rmojiAlvqUj6a"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/pro100chok~naver-all-in-one-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-pro100chok-naver-all-in-one-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/pro100chok~naver-all-in-one-scraper/runs": {
      "post": {
        "operationId": "runs-sync-pro100chok-naver-all-in-one-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/pro100chok~naver-all-in-one-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-pro100chok-naver-all-in-one-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",
        "required": [
          "scrapeType"
        ],
        "properties": {
          "scrapeType": {
            "title": "What to scrape",
            "enum": [
              "places",
              "shopping",
              "blog",
              "cafe",
              "news",
              "kin",
              "serp",
              "web",
              "images",
              "videos",
              "autocomplete",
              "shoppingBest",
              "shoppingInsights",
              "realEstate",
              "webtoons",
              "stocks",
              "blogPosts",
              "urls"
            ],
            "type": "string",
            "description": "The Naver service to collect from. Every mode also accepts Naver links in Queries — a link is routed to the right parser automatically.",
            "default": "places"
          },
          "queries": {
            "title": "Queries — keywords, IDs or Naver URLs",
            "type": "array",
            "description": "One entry per search. Keywords in Korean give the richest results (e.g. 강남 맛집, 에어팟). You can also paste IDs (place ID, stock code 005930, webtoon titleId, real-estate complex number, blog ID) or any Naver link — blog posts, cafe articles, news articles, Knowledge iN questions, map places, Smart Store products, real-estate complexes, webtoons, stocks. Optional for Shopping BEST, Shopping Insight and Webtoons (they then list the ranking / catalogue).",
            "default": [
              "강남 맛집"
            ],
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "Max results per query",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Upper limit of results for each query (places, products, posts, listings…). Nested reviews and comments do not count towards it.",
            "default": 1000
          },
          "sortBy": {
            "title": "Sort order (blog, cafe, news, Knowledge iN, images, videos)",
            "enum": [
              "relevance",
              "date",
              "oldest"
            ],
            "type": "string",
            "description": "Order of search results for content searches. Relevance first collects the best matches, then automatically continues with the newest posts so large limits keep producing fresh results.",
            "default": "relevance"
          },
          "period": {
            "title": "Published within",
            "enum": [
              "all",
              "1h",
              "1d",
              "1w",
              "1m",
              "3m",
              "6m",
              "1y"
            ],
            "type": "string",
            "description": "Only return content published in this period. Ignored when a custom date range is set below.",
            "default": "all"
          },
          "dateFrom": {
            "title": "Published from (YYYY-MM-DD)",
            "type": "string",
            "description": "Start of a custom date range for content searches, e.g. 2026-01-01."
          },
          "dateTo": {
            "title": "Published to (YYYY-MM-DD)",
            "type": "string",
            "description": "End of a custom date range for content searches, e.g. 2026-03-31."
          },
          "includeAds": {
            "title": "Include sponsored results",
            "type": "boolean",
            "description": "Keep paid power-content posts in blog results (they are flagged with isAd). Off by default.",
            "default": false
          },
          "includeDetails": {
            "title": "Full details",
            "type": "boolean",
            "description": "Open every result and add its full data: blog post text, tags and images; full cafe article; full news article; Knowledge iN question with all answers; place opening hours, menu, amenities, popular times, review keywords, transit; product brand, category path, seller details; webtoon synopsis and creators; real-estate complex facts; stock price history. Billed as an extra details event per result.",
            "default": false
          },
          "includeComments": {
            "title": "Include comments (cafe & news)",
            "type": "boolean",
            "description": "Attach comments to cafe articles and Naver News articles. Each comment is billed as one review event.",
            "default": false
          },
          "maxComments": {
            "title": "Max comments / answers per result",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Limit of comments per cafe/news article and of answers per Knowledge iN question.",
            "default": 20
          },
          "includeReviews": {
            "title": "Include reviews (places & products)",
            "type": "boolean",
            "description": "Attach visitor reviews to Naver Map places and buyer reviews to Smart Store / Brand Store products. Each review is billed as one review event.",
            "default": false
          },
          "maxReviews": {
            "title": "Max reviews per place / product",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Limit of reviews attached to each place or product. For Stocks with Full details on, it sets how many days of price history to include.",
            "default": 20
          },
          "reviewSort": {
            "title": "Review order",
            "enum": [
              "recent",
              "relevance",
              "ratingHigh",
              "ratingLow"
            ],
            "type": "string",
            "description": "Which reviews come first.",
            "default": "recent"
          },
          "includePhotos": {
            "title": "Include place photos",
            "type": "boolean",
            "description": "Attach photo URLs (business and visitor photos) to each place.",
            "default": false
          },
          "maxPhotos": {
            "title": "Max photos per place",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Limit of photo URLs per place.",
            "default": 20
          },
          "shoppingSort": {
            "title": "Product sort order",
            "enum": [
              "REL",
              "PURCHASE",
              "REVIEW",
              "LOW_PRICE",
              "HIGH_PRICE",
              "RECENT"
            ],
            "type": "string",
            "description": "Order of Naver Shopping product results.",
            "default": "REL"
          },
          "minPrice": {
            "title": "Min price (KRW)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip products cheaper than this."
          },
          "maxPrice": {
            "title": "Max price (KRW)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip products more expensive than this."
          },
          "bestRanking": {
            "title": "BEST ranking type",
            "enum": [
              "PRODUCT_BUY",
              "PRODUCT_CLICK",
              "KEYWORD_POPULAR",
              "BRAND_POPULAR"
            ],
            "type": "string",
            "description": "Which Naver Shopping BEST chart to collect.",
            "default": "PRODUCT_BUY"
          },
          "bestPeriod": {
            "title": "BEST period",
            "enum": [
              "DAILY",
              "WEEKLY"
            ],
            "type": "string",
            "description": "Daily or weekly chart. Brand ranking is weekly only.",
            "default": "DAILY"
          },
          "bestCategory": {
            "title": "BEST category",
            "enum": [
              "A",
              "50000000",
              "50000001",
              "50000002",
              "50000003",
              "50000004",
              "50000005",
              "50000006",
              "50000007",
              "50000008",
              "50000009",
              "50005542"
            ],
            "type": "string",
            "description": "Category of the BEST chart.",
            "default": "A"
          },
          "deepSearch": {
            "title": "Deep area search (beyond 300 places)",
            "type": "boolean",
            "description": "Naver Map stops at about 300 places per search. With this on, the area of the search is cut into smaller map squares until each one fits, so a keyword like 홍대 카페 returns every matching place in the area (thousands instead of 300). The area is taken from the keyword's first results, or from the latitude / longitude and radius below.",
            "default": false
          },
          "latitude": {
            "title": "Search near latitude",
            "type": "string",
            "description": "Rank places around this point (e.g. 35.1796 for Busan). Use together with longitude. Leave empty to let Naver decide from the keyword."
          },
          "longitude": {
            "title": "Search near longitude",
            "type": "string",
            "description": "Longitude of the point to search around (e.g. 129.0756 for Busan)."
          },
          "searchRadiusKm": {
            "title": "Search radius (km)",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "With latitude / longitude set, the size of the area swept by Deep area search (half the side of the square, in km).",
            "default": 3
          },
          "language": {
            "title": "Result language",
            "enum": [
              "ko",
              "en"
            ],
            "type": "string",
            "description": "Korean returns original names and texts. English makes Naver Map return romanised / English place names and categories where available.",
            "default": "ko"
          },
          "tradeTypes": {
            "title": "Deal types",
            "type": "array",
            "description": "Real-estate deal types to include. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "A1",
                "B1",
                "B2",
                "B3"
              ],
              "enumTitles": [
                "Sale (매매)",
                "Jeonse lease (전세)",
                "Monthly rent (월세)",
                "Short-term rent (단기임대)"
              ]
            }
          },
          "realEstateSort": {
            "title": "Listing order",
            "enum": [
              "RANKING_DESC",
              "DATE_DESC",
              "PRICE_DESC",
              "PRICE_ASC",
              "SPACE_DESC"
            ],
            "type": "string",
            "description": "Order of real-estate listings.",
            "default": "RANKING_DESC"
          },
          "webtoonDay": {
            "title": "Webtoon list",
            "enum": [
              "ALL",
              "MONDAY",
              "TUESDAY",
              "WEDNESDAY",
              "THURSDAY",
              "FRIDAY",
              "SATURDAY",
              "SUNDAY",
              "NEW",
              "FINISHED"
            ],
            "type": "string",
            "description": "Which catalogue to list when no query is given.",
            "default": "ALL"
          },
          "includeEpisodes": {
            "title": "Include episodes",
            "type": "boolean",
            "description": "Attach the episode list (number, title, rating, date) to each webtoon.",
            "default": false
          },
          "maxEpisodes": {
            "title": "Max episodes per webtoon",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Limit of episodes per webtoon, newest first.",
            "default": 20
          },
          "insightCategory": {
            "title": "Shopping Insight category",
            "enum": [
              "50000000",
              "50000001",
              "50000002",
              "50000003",
              "50000004",
              "50000005",
              "50000006",
              "50000007",
              "50000008",
              "50000009",
              "50000010",
              "50005542"
            ],
            "type": "string",
            "description": "DataLab category: top keywords are listed for it, keyword trends are measured within it.",
            "default": "50000000"
          },
          "timeUnit": {
            "title": "Trend granularity",
            "enum": [
              "date",
              "week",
              "month"
            ],
            "type": "string",
            "description": "Granularity of keyword trend series.",
            "default": "date"
          },
          "startDate": {
            "title": "Insight start date",
            "type": "string",
            "description": "Start of the DataLab period (YYYY-MM-DD). Default: 30 days before the end date."
          },
          "endDate": {
            "title": "Insight end date",
            "type": "string",
            "description": "End of the DataLab period (YYYY-MM-DD). Default: yesterday."
          },
          "device": {
            "title": "Device",
            "enum": [
              "",
              "pc",
              "mo"
            ],
            "type": "string",
            "description": "Limit DataLab statistics to one device type.",
            "default": ""
          },
          "gender": {
            "title": "Gender",
            "enum": [
              "",
              "f",
              "m"
            ],
            "type": "string",
            "description": "Limit DataLab statistics to one gender.",
            "default": ""
          },
          "ages": {
            "title": "Age groups",
            "type": "array",
            "description": "Limit DataLab statistics to these age groups. Empty = all ages.",
            "items": {
              "type": "string",
              "enum": [
                "10",
                "20",
                "30",
                "40",
                "50",
                "60"
              ],
              "enumTitles": [
                "10s",
                "20s",
                "30s",
                "40s",
                "50s",
                "60+"
              ]
            }
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Korean residential proxies are used by default and are included in the price. You can switch to your own proxies here.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "KR"
            }
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 32,
            "type": "integer",
            "description": "How many requests run in parallel. The default suits almost every run.",
            "default": 8
          },
          "maxRetries": {
            "title": "Max retries per request",
            "minimum": 1,
            "maximum": 15,
            "type": "integer",
            "description": "How many times a failed request is retried before it is skipped.",
            "default": 6
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}