> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapebadger.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Shopping Keyword Rankings

> Trending Naver Shopping keyword rankings for a category, with rise/fall status and rank movement.

Fetch Naver Shopping's **trending keyword ranking** for a category — the keywords shoppers are searching most, each with its rank, a sub-title, tags, a rise/fall status and the rank movement versus the previous period.

**Credits:** 5

<Note>
  `category_id` is required and must be a real Naver Shopping category id — `ALL` returns an empty ranking. Take an id from [`/shopping/categories`](/api-reference/endpoint/naver/shopping-categories).
</Note>

## Authorization

<ParamField header="X-API-Key" type="string" required>
  Your ScrapeBadger API key.
</ParamField>

## Query Parameters

<ParamField query="category_id" type="string" required>
  Category to rank within. A real category id — `ALL` returns empty.
</ParamField>

<ParamField query="age_type" type="string" default="ALL">
  Age bracket to rank for.
</ParamField>

<ParamField query="sort_type" type="string" default="KEYWORD_POPULAR">
  The metric the ranking is sorted by.
</ParamField>

<ParamField query="period_type" type="string" default="WEEKLY">
  `DAILY` or `WEEKLY`.
</ParamField>

## Response

<ResponseField name="category_id" type="string">Echo of the requested category.</ResponseField>

<ResponseField name="age_type" type="string" />

<ResponseField name="sort_type" type="string" />

<ResponseField name="period_type" type="string" />

<ResponseField name="result_count" type="integer" />

<ResponseField name="keywords" type="Keyword[]">
  Ranked keywords.

  <Expandable title="Keyword">
    <ResponseField name="rank" type="integer" />

    <ResponseField name="keyword" type="string" />

    <ResponseField name="sub_title" type="string" />

    <ResponseField name="tags" type="string[]" />

    <ResponseField name="status" type="string">`RISE`, `FALL`, `STABLE`, `NEW`, `UP` or `DOWN`.</ResponseField>
    <ResponseField name="rank_fluctuation" type="integer">Rank change versus the previous period.</ResponseField>

    <ResponseField name="category_id" type="string" />

    <ResponseField name="category_path" type="string[]" />
  </Expandable>
</ResponseField>

## Example

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://scrapebadger.com/v1/naver/shopping/keywords?category_id=50000000&period_type=WEEKLY" \
    -H "X-API-Key: YOUR_API_KEY"
  ```

  ```javascript Node.js theme={null}
  const res = await fetch(
    "https://scrapebadger.com/v1/naver/shopping/keywords?" +
      new URLSearchParams({"category_id": "50000000", "period_type": "WEEKLY"}),
    { headers: { "X-API-Key": process.env.SCRAPEBADGER_API_KEY } },
  );
  const data = await res.json();
  ```

  ```python Python theme={null}
  import requests

  res = requests.get(
      "https://scrapebadger.com/v1/naver/shopping/keywords",
      headers={"X-API-Key": "YOUR_API_KEY"},
      params={"category_id": "50000000", "period_type": "WEEKLY"},
  )
  data = res.json()
  ```
</CodeGroup>

```json Response theme={null}
{
  "category_id": "50000000",
  "age_type": "ALL",
  "sort_type": "KEYWORD_POPULAR",
  "period_type": "WEEKLY",
  "result_count": 100,
  "keywords": [
    {
      "rank": 1,
      "keyword": "여름 원피스",
      "sub_title": "",
      "tags": [
        "여성의류"
      ],
      "status": "RISE",
      "rank_fluctuation": 3,
      "category_id": "50000167",
      "category_path": [
        "패션의류",
        "여성의류",
        "원피스"
      ]
    }
  ]
}
```

## Errors

| Status | Meaning |
| - | - |
| `422` | Naver served a challenge instead of content — **not billed**. Retry; it succeeds. |
| `502` | Unexpected upstream failure — **not billed**. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.