{
  "openapi": "3.0.1",
  "info": {
    "title": "Naver Search API — Shopping, Blog, News, Cafe & Trends",
    "description": "Naver Shopping, blog, news, cafe, image, book and local search via Naver's official Open API, plus DataLab trends. Clean JSON with prices, malls, brands and categories. Bring your own free key.",
    "version": "0.1",
    "x-build-id": "wlCTw1GIBiUiERQmm"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/highbrow_fame~naver-search-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-highbrow_fame-naver-search-api",
        "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/highbrow_fame~naver-search-api/runs": {
      "post": {
        "operationId": "runs-sync-highbrow_fame-naver-search-api",
        "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/highbrow_fame~naver-search-api/run-sync": {
      "post": {
        "operationId": "run-sync-highbrow_fame-naver-search-api",
        "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": {
          "clientId": {
            "title": "Naver Client ID",
            "type": "string",
            "description": "Required. The Client ID of your own free Naver application: developers.naver.com > Application > Register Application, add the Search API (and DataLab for the trend types), then copy it from the app's Overview tab. Stored as a secret; it is sent only to Naver's API and never written to the results or the log."
          },
          "clientSecret": {
            "title": "Naver Client Secret",
            "type": "string",
            "description": "Required. The Client Secret of the same Naver application (Overview tab > Client Secret > show). Stored as a secret; never written to the results or the log."
          },
          "searchType": {
            "title": "What to search",
            "enum": [
              "shop",
              "blog",
              "news",
              "cafearticle",
              "kin",
              "image",
              "webkr",
              "doc",
              "book",
              "encyc",
              "local",
              "trend-search",
              "trend-shopping-category",
              "trend-shopping-keyword"
            ],
            "type": "string",
            "description": "Which part of Naver to search. Shopping returns products with prices, malls, brands and categories; the other search types return titles, summaries and links. The three trend types return a time series from Naver DataLab (see the trend options below).",
            "default": "shop"
          },
          "queries": {
            "title": "Search words",
            "type": "array",
            "description": "One search per line, in Korean or English (for example 무선 이어폰 or laptop). Duplicates are searched once. For the three trend types each line is one group instead: 'Group name=word1,word2' (or just 'word1,word2'); for shopping category trends the words are category codes such as 50000000; for shopping keyword trends it is one keyword per line.",
            "items": {
              "type": "string"
            }
          },
          "maxResultsPerQuery": {
            "title": "Max results per search word",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "How many results to collect for each search word. Naver shows at most the first 1,000 results of a search (100 per call, so up to 10 calls), and local places at most 5. Ignored by the trend types.",
            "default": 100
          },
          "sort": {
            "title": "Sort order",
            "enum": [
              "sim",
              "date",
              "asc",
              "dsc",
              "point",
              "comment"
            ],
            "type": "string",
            "description": "Relevance is Naver's default. Newest first works for shopping, blog, news, cafe, Knowledge iN, image and book search; the price orders are for shopping only; highest rated is for Knowledge iN only; most reviewed is for local places only. A choice that does not exist for the search type is replaced by relevance (the log says so); web, document and encyclopedia search have no sort order.",
            "default": "sim"
          },
          "excludeUsed": {
            "title": "Shopping: leave out used items",
            "type": "boolean",
            "description": "Shopping search only. Leaves out second-hand products (Naver's exclude=used).",
            "default": false
          },
          "excludeRental": {
            "title": "Shopping: leave out rental products",
            "type": "boolean",
            "description": "Shopping search only. Leaves out rental products (Naver's exclude=rental).",
            "default": false
          },
          "excludeCrossBorder": {
            "title": "Shopping: leave out overseas direct purchase",
            "type": "boolean",
            "description": "Shopping search only. Leaves out overseas direct-purchase and purchasing-agent products (Naver's exclude=cbshop).",
            "default": false
          },
          "naverPayOnly": {
            "title": "Shopping: only Naver Pay products",
            "type": "boolean",
            "description": "Shopping search only. Keeps only products that work with Naver Pay (Naver's filter=naverpay).",
            "default": false
          },
          "imageSize": {
            "title": "Image size",
            "enum": [
              "all",
              "large",
              "medium",
              "small"
            ],
            "type": "string",
            "description": "Image search only.",
            "default": "all"
          },
          "shoppingCategory": {
            "title": "Shopping category code (keyword trends)",
            "type": "string",
            "description": "Only for 'shopping keyword clicks in a category'. The number after cat_id= in the address of a Naver Shopping category page, for example 50000000."
          },
          "trendStartDate": {
            "title": "Trend start date",
            "type": "string",
            "description": "yyyy-mm-dd. Empty means one year before the end date. Search trends start 2016-01-01, shopping trends 2017-08-01."
          },
          "trendEndDate": {
            "title": "Trend end date",
            "type": "string",
            "description": "yyyy-mm-dd. Empty means yesterday."
          },
          "trendTimeUnit": {
            "title": "Trend time unit",
            "enum": [
              "date",
              "week",
              "month"
            ],
            "type": "string",
            "description": "One data point per day, week or month.",
            "default": "week"
          },
          "trendDevice": {
            "title": "Trend device",
            "enum": [
              "all",
              "pc",
              "mo"
            ],
            "type": "string",
            "description": "Count searches or clicks from all devices, from PC only or from mobile only.",
            "default": "all"
          },
          "trendGender": {
            "title": "Trend gender",
            "enum": [
              "all",
              "m",
              "f"
            ],
            "type": "string",
            "description": "Count all users, only men or only women.",
            "default": "all"
          },
          "trendAges": {
            "title": "Trend age groups",
            "type": "array",
            "description": "Optional, one code per line; empty means all ages. Search trends: 1 (0-12), 2 (13-18), 3 (19-24), 4 (25-29), 5 (30-34), 6 (35-39), 7 (40-44), 8 (45-49), 9 (50-54), 10 (55-59), 11 (60+). Shopping trends: 10 (10-19), 20 (20-29), 30 (30-39), 40 (40-49), 50 (50-59), 60 (60+).",
            "items": {
              "type": "string"
            }
          },
          "maxConcurrency": {
            "title": "Parallel searches",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "How many search words are worked on at the same time. Calls are also spaced out, so the default is safe for Naver's limits.",
            "default": 2
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}