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

# Explore Nicknames

> Explore NFT nicknames listed on the marketplace.

## Header parameters

<ParamField header="msu-authorization" type="string">
  Auth token. When provided, search filters are applied; without it, filters are not applied.
</ParamField>

## Query parameters

<ParamField query="filter.name" type="string">
  Nickname partial match (case-insensitive, internally normalized to lowercase)
</ParamField>

<ParamField query="filter.nameLengths" type="array">
  Nickname length filter (multi-select, OR condition)
</ParamField>

<ParamField query="filter.price.min" type="number">
  Minimum price (NESO, ≥0)
</ParamField>

<ParamField query="filter.price.max" type="number">
  Maximum price (NESO, ≥min)
</ParamField>

<ParamField query="filter.characterSets" type="array">
  Character composition filter (`ALPHABET_ONLY`, `NUMERIC_ONLY`, `MIXED`)
</ParamField>

<ParamField query="sorting" type="string">
  Sort criterion (`HIGHEST_PRICE`, `LOWEST_PRICE`, `ENDING_SOON`, `RECENTLY_LISTED`)
</ParamField>

<ParamField query="paginationParam.pageNo" type="integer">
  Page number (starting from 1, default: 1)
</ParamField>

<ParamField query="paginationParam.pageSize" type="integer">
  Page size (default: 30). Combined offset of `(pageNo-1) × pageSize` must not exceed 10,000
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  Indicates if the request was successful
</ResponseField>

<ResponseField name="data" type="object">
  <Expandable title="properties">
    <ResponseField name="nicknames" type="array">
      List of nickname NFTs on sale
    </ResponseField>

    <ResponseField name="paginationResult.totalCount" type="integer">
      Total result count
    </ResponseField>

    <ResponseField name="paginationResult.currPageNo" type="integer">
      Current page number
    </ResponseField>

    <ResponseField name="paginationResult.pageSize" type="integer">
      Page size
    </ResponseField>

    <ResponseField name="paginationResult.isLastPage" type="boolean">
      Whether this is the last page
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://openapi.msu.io/v1rc1/search/nicknames?paginationParam.pageNo=1&paginationParam.pageSize=30' \
    --header 'Content-Type: application/json' \
    --header 'x-nxopen-api-key: YOUR_API_KEY'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://openapi.msu.io/v1rc1/search/nicknames?paginationParam.pageNo=1&paginationParam.pageSize=30', {
    method: 'GET',
    headers: {
      'Content-Type': 'application/json',
      'x-nxopen-api-key': 'YOUR_API_KEY'
    }
  });
  const data = await response.json();
  ```

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

  url = "https://openapi.msu.io/v1rc1/search/nicknames"
  params = {
    "paginationParam.pageNo": 1,
    "paginationParam.pageSize": 30
  }
  headers = {
    "x-nxopen-api-key": "YOUR_API_KEY"
  }

  response = requests.get(url, params=params, headers=headers)
  data = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": {
      "nicknames": [],
      "paginationResult": {
        "totalCount": 0,
        "currPageNo": 1,
        "pageSize": 30,
        "isLastPage": true
      }
    }
  }
  ```
</ResponseExample>
