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

# Get Role List

## Endpoint Overview

**GET** `https://api.unibee.dev/merchant/role/list`

Get Role List

***

## Authorization

All UniBee Merchant API requests require authentication via API key.

| Header          | Required | Description                           |
| --------------- | -------- | ------------------------------------- |
| `Authorization` | Yes      | Bearer `<your_api_key>`               |
| `Content-Type`  | Yes      | `application/json` (for request body) |

***

## Parameters

Path, query, and request body parameters are defined in the schema below. Use the interactive Try it panel to see the full request structure.

Path, query, and request body parameters are defined in the schema below. Use the interactive Try it panel to see the full request structure.

***

## Request examples

### cURL

```bash theme={null}
curl -X GET "https://api.unibee.dev/merchant/role/list" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"
```

### Sandbox

```bash theme={null}
curl -X GET "https://api-sandbox.unibee.top/merchant/role/list" \
  -H "Authorization: Bearer YOUR_SANDBOX_API_KEY" \
  -H "Content-Type: application/json"
```

***

## Response

Success responses return a JSON envelope with `code`, `data`, `message`, `redirect`, and `requestId`. `code` `0` indicates success.

| Field                | Type    | Description                  |
| -------------------- | ------- | ---------------------------- |
| `code`               | integer | Response code. `0` = success |
| `data`               | object  | Response payload             |
| `data.merchantRoles` | array   | Merchant Roles               |
| `data.total`         | integer | Total                        |
| `message`            | string  | Human-readable message       |
| `requestId`          | string  | Request ID for support       |

***

## Error handling

| HTTP status | Meaning                                                                   |
| ----------- | ------------------------------------------------------------------------- |
| 400         | Bad request — invalid or missing parameters. Check `message` in the body. |
| 401         | Unauthorized — missing or invalid API key.                                |
| 404         | Not found — invalid path or resource.                                     |
| 500         | Server error — retry with backoff.                                        |

When `code` in the response body is non-zero, check `message` for details. Use `requestId` when contacting support.


## OpenAPI

````yaml get /merchant/role/list
openapi: 3.0.0
info:
  description: UniBee Api Server
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: OpenAPI UniBee
  version: daily,buildtime:202603161017
servers:
  - url: https://api.unibee.dev
  - url: https://api-sandbox.unibee.top
security:
  - Authorization: []
paths:
  /merchant/role/list:
    get:
      tags:
        - Admin Role
      summary: Get Role List
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    format: int
                    properties: {}
                    type: integer
                  data:
                    properties:
                      merchantRoles:
                        description: Merchant Roles
                        format: '[]*bean.MerchantRole'
                        items:
                          $ref: '#/components/schemas/unibee.api.bean.MerchantRole'
                        properties: {}
                        type: array
                      total:
                        description: Total
                        format: int
                        properties: {}
                        type: integer
                    type: object
                  merchantId:
                    format: int64
                    properties: {}
                    type: integer
                  message:
                    format: string
                    properties: {}
                    type: string
                  redirect:
                    format: string
                    properties: {}
                    type: string
                  requestId:
                    format: string
                    properties: {}
                    type: string
                type: object
          description: ''
components:
  schemas:
    unibee.api.bean.MerchantRole:
      properties:
        createTime:
          description: create utc time
          format: int64
          properties: {}
          type: integer
        id:
          description: id
          format: int64
          properties: {}
          type: integer
        merchantId:
          description: merchant id
          format: int64
          properties: {}
          type: integer
        permissions:
          description: permissions
          format: '[]*bean.MerchantRolePermission'
          items:
            $ref: '#/components/schemas/unibee.api.bean.MerchantRolePermission'
          properties: {}
          type: array
        role:
          description: role
          format: string
          properties: {}
          type: string
      type: object
    unibee.api.bean.MerchantRolePermission:
      properties:
        group:
          description: Group
          format: string
          properties: {}
          type: string
        permissions:
          description: Permissions
          format: '[]string'
          items:
            format: string
            properties: {}
            type: string
          properties: {}
          type: array
      type: object
  securitySchemes:
    Authorization:
      bearerFormat: JWT
      scheme: bearer
      type: http

````