{
  "openapi": "3.0.1",
  "info": {
    "title": "Naver Scraper: Shopping, Place, Brand Store & Rank",
    "description": "Scrape Naver Shopping products, Naver Place local businesses with visitor reviews, whole brand store catalogues, and keyword rank positions for your product or seller. Korean or English keywords, no login and no proxy setup. 네이버 쇼핑, 플레이스, 브랜드스토어 수집.",
    "version": "0.0",
    "x-build-id": "ridjuyBkFVMeov5SN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/sourabhbgp~naver-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-sourabhbgp-naver-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/sourabhbgp~naver-scraper/runs": {
      "post": {
        "operationId": "runs-sync-sourabhbgp-naver-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/sourabhbgp~naver-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-sourabhbgp-naver-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": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "What to scrape",
            "enum": [
              "shopping",
              "place",
              "store",
              "rank"
            ],
            "type": "string",
            "description": "Shopping searches Naver Shopping for products. Place searches Naver Place for local businesses and their visitor reviews. Store lists every product in one brand store. Rank tells you where your product or shop sits in the results for a keyword.",
            "default": "shopping"
          },
          "searchTerms": {
            "title": "Search terms",
            "minItems": 1,
            "maxItems": 50,
            "type": "array",
            "description": "Korean or English keywords. Used by Shopping, Place and Rank. For Place, include the intent word, for example 강남 맛집 rather than 강남. Not used by Store.",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "Max results per search term",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Places, products or brand-store items to return for each search term. Review rows are extra and are not counted here. Shopping reaches about 10,000 per term per sort order. Place reaches about 399 per term, whatever you set.",
            "default": 100
          },
          "shoppingSort": {
            "title": "Shopping: sort order",
            "enum": [
              "DEFAULT",
              "REVIEW",
              "RECENT",
              "LOW_PRICE",
              "HIGH_PRICE"
            ],
            "type": "string",
            "description": "Each sort order returns a largely different set of products, so changing this changes which products you get, not just their order.",
            "default": "DEFAULT"
          },
          "placeCategory": {
            "title": "Place: category",
            "enum": [
              "any",
              "restaurant",
              "hospital",
              "hairshop",
              "pharmacy"
            ],
            "type": "string",
            "description": "Narrows the search to one Naver Place vertical. Leave it on Any unless you want the filter: the category is combined with your keyword, so searching a hair salon with the Restaurants filter returns nothing. Restaurant also covers cafes and bars.",
            "default": "any"
          },
          "includeReviews": {
            "title": "Place: also scrape visitor reviews",
            "type": "boolean",
            "description": "Adds each business's visitor reviews with full review text. This makes runs longer and returns more rows.",
            "default": false
          },
          "maxReviewsPerPlace": {
            "title": "Place: max reviews per business",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Only used when visitor reviews are switched on. These rows are additional to Max results, so 20 places at 50 reviews is up to 1,020 rows.",
            "default": 50
          },
          "storeSlugs": {
            "title": "Store: brand stores",
            "maxItems": 20,
            "type": "array",
            "description": "Brand store names or their brand.naver.com URLs, for example adidas or https://brand.naver.com/adidas. One row per product in the store.",
            "items": {
              "type": "string"
            }
          },
          "storeSortType": {
            "title": "Store: sort order",
            "enum": [
              "POPULAR",
              "RECENT",
              "LOWPRICE",
              "HIGHPRICE",
              "TOTALSALE",
              "REVIEW"
            ],
            "type": "string",
            "description": "Order the store catalogue is walked in.",
            "default": "POPULAR"
          },
          "includeStoreReviews": {
            "title": "Store: also scrape product reviews",
            "type": "boolean",
            "description": "Adds each product's customer reviews with full text, rating and date. Makes runs longer and returns more rows.",
            "default": false
          },
          "maxReviewsPerProduct": {
            "title": "Store: max reviews per product",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Only used when store product reviews are switched on. These rows are additional to Max results, so 20 products at 20 reviews is up to 420 rows.",
            "default": 20
          },
          "targetProductIds": {
            "title": "Rank: product IDs to look for",
            "maxItems": 50,
            "type": "array",
            "description": "Naver product IDs to find in the results. Each one returns its position, or a row saying it was not found.",
            "items": {
              "type": "string"
            }
          },
          "targetMallNames": {
            "title": "Rank: seller names to look for",
            "maxItems": 50,
            "type": "array",
            "description": "Seller or shop names exactly as Naver shows them. Every placement that seller holds is returned.",
            "items": {
              "type": "string"
            }
          },
          "targetMallSeqs": {
            "title": "Rank: seller IDs to look for",
            "maxItems": 50,
            "type": "array",
            "description": "Naver seller IDs, if you know them. More reliable than matching on the seller name.",
            "items": {
              "type": "string"
            }
          },
          "rankScanDepth": {
            "title": "Rank: how deep to look",
            "minimum": 100,
            "maximum": 10000,
            "type": "integer",
            "description": "How many results to scan per keyword before reporting a target as not found. Deeper costs more and takes longer. A result near a page boundary can occasionally be missed, so treat not found as not in the top N rather than absent.",
            "default": 1000
          },
          "maxPlacementsPerTarget": {
            "title": "Rank: max placements per seller",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "A seller can hold many positions for one keyword. This caps how many are reported for each seller target, so one seller name cannot return hundreds of rows. Product ID targets always return one row.",
            "default": 20
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Datacenter proxy is enough for both modes and is the cheapest option. Leave as is unless you have a reason to change it.",
            "default": {
              "useApifyProxy": 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}