# Create Role

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/msp/roles/:
    post:
      summary: Create Role
      deprecated: false
      description: ''
      tags:
        - MSP Guide/API Reference/Role
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                role_permissions_ids:
                  type: array
                  items:
                    type: integer
                msp_node:
                  type: integer
              required:
                - name
                - role_permissions_ids
                - msp_node
              x-apidog-orders:
                - name
                - role_permissions_ids
                - msp_node
            example:
              name: ''
              role_permissions_ids:
                - 1
                - 5
                - 9
                - 13
                - 18
              msp_node: 1
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                  name:
                    type: string
                  msp_node:
                    type: integer
                  msp_node_name:
                    type: string
                  role_permissions:
                    type: array
                    items:
                      type: object
                      properties:
                        category_name:
                          type: string
                        category_description:
                          type: string
                        permissions:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                              name:
                                type: string
                              code:
                                type: string
                              description:
                                type: string
                              is_selected:
                                type: boolean
                            required:
                              - id
                              - name
                              - code
                              - description
                              - is_selected
                            x-apidog-orders:
                              - id
                              - name
                              - code
                              - description
                              - is_selected
                      required:
                        - category_name
                        - category_description
                        - permissions
                      x-apidog-orders:
                        - category_name
                        - category_description
                        - permissions
                  role_type:
                    type: string
                  last_modified:
                    type: string
                required:
                  - id
                  - name
                  - msp_node
                  - msp_node_name
                  - role_permissions
                  - role_type
                  - last_modified
                x-apidog-orders:
                  - id
                  - name
                  - msp_node
                  - msp_node_name
                  - role_permissions
                  - role_type
                  - last_modified
              example:
                id: 144
                name: Low Priv Admin User
                msp_node: 69
                msp_node_name: Acme Corp
                role_permissions:
                  - category_name: Node Management
                    category_description: ''
                    permissions:
                      - id: 21
                        name: View Nodes
                        code: msp_view_node
                        description: Users with this permission can view Child Node.
                        is_selected: true
                      - id: 1
                        name: Create Nodes
                        code: msp_add_node
                        description: Users with this permission can create Child Node.
                        is_selected: true
                      - id: 2
                        name: Modify Nodes
                        code: msp_edit_node
                        description: >-
                          Users with this permission can modify the details of a
                          Child Node.
                        is_selected: false
                      - id: 3
                        name: Delete Nodes
                        code: msp_delete_node
                        description: Users with this permission can delete Child Nodes.
                        is_selected: false
                  - category_name: User Management
                    category_description: ''
                    permissions:
                      - id: 22
                        name: View Users
                        code: msp_view_user
                        description: >-
                          Users with this permission can view users. Parent Node
                          Users can also view users within a Child (If
                          Authorized).
                        is_selected: true
                      - id: 4
                        name: Add Users
                        code: msp_add_user
                        description: >-
                          Users with this permission can add users to the Parent
                          Node. Parent Node Users can also add users within a
                          Child (If Authorized).
                        is_selected: false
                      - id: 5
                        name: Modify Users
                        code: msp_edit_user
                        description: >-
                          Users with this permission can modify users within the
                          Parent Node. Parent Node Users can also modify users
                          within a Child Node (If Authorized).
                        is_selected: true
                      - id: 6
                        name: Delete Users
                        code: msp_delete_user
                        description: >-
                          Users with this permission can delete users within the
                          Parent Node. Parent Node Users can also delete users
                          within a Child Node (If Authorized).
                        is_selected: false
                  - category_name: Role Management
                    category_description: ''
                    permissions:
                      - id: 23
                        name: View Roles
                        code: msp_view_role
                        description: >-
                          Users with this permission can view roles to the
                          Parent Node. Parent Node Users can also view roles
                          within a Child Node (If Authorized).
                        is_selected: true
                      - id: 7
                        name: Add Roles
                        code: msp_add_role
                        description: >-
                          Users with this permission can add roles to the Parent
                          Node. Parent Node Users can also add roles within a
                          Child Node (If Authorized).
                        is_selected: false
                      - id: 8
                        name: Modify Roles
                        code: msp_edit_role
                        description: >-
                          Users with this permission can modify roles within the
                          Parent Node. Parent Node Users can also modify roles
                          within a Child Node (If Authorized).
                        is_selected: false
                      - id: 9
                        name: Delete Roles
                        code: msp_delete_role
                        description: >-
                          Users with this permission can delete roles within the
                          Parent Node. Parent Node Users can also delete roles
                          within a Child Node (If Authorized).
                        is_selected: true
                  - category_name: Service Account Management
                    category_description: ''
                    permissions:
                      - id: 24
                        name: View Service Account
                        code: msp_view_service_account
                        description: Users with this permission can view service accounts.
                        is_selected: true
                      - id: 10
                        name: Add Service Account
                        code: msp_add_service_account
                        description: >-
                          Users with this permission can create service
                          accounts.
                        is_selected: false
                      - id: 11
                        name: Modify Service Account
                        code: msp_edit_service_account
                        description: >-
                          Users with this permission can modify service
                          accounts.
                        is_selected: false
                      - id: 12
                        name: Rotate Service Account Secret
                        code: msp_rotate_service_account
                        description: >-
                          Users with this permission can rotate service account
                          secret keys.
                        is_selected: false
                      - id: 13
                        name: Delete Service Account
                        code: msp_delete_service_account
                        description: >-
                          Users with this permission can delete service
                          accounts.
                        is_selected: true
                  - category_name: 'Managed Companies '
                    category_description: ''
                    permissions:
                      - id: 25
                        name: View Managed Company
                        code: msp_view_managed_company
                        description: Users with this permission can view managed companies.
                        is_selected: true
                      - id: 14
                        name: Create Managed Company
                        code: msp_add_managed_company
                        description: >-
                          Users with this permission can create managed
                          companies.
                        is_selected: false
                      - id: 15
                        name: Modify Managed Company
                        code: msp_edit_managed_company
                        description: >-
                          Users with this permission can modify managed
                          companies.
                        is_selected: false
                      - id: 16
                        name: Delete Managed Company
                        code: msp_delete_managed_company
                        description: >-
                          Users with this permission can delete managed
                          companies.
                        is_selected: false
                      - id: 17
                        name: Access Managed Company
                        code: msp_assume_managed_company
                        description: >-
                          Users with this permission can access managed
                          companies 'Assume Tenant Functionality'.
                        is_selected: false
                      - id: 18
                        name: Access Managed Company (Read Only)
                        code: msp_assumeRead_managed_company
                        description: >-
                          Users with this permission can access managed
                          companies (read only) 'Assume Tenant Functionality'.
                        is_selected: true
                  - category_name: Additional Permissions
                    category_description: ''
                    permissions:
                      - id: 19
                        name: Billing Administrator
                        code: msp_billing_administrator
                        description: >-
                          Users with this permission can access the billing
                          management page. (Parent Node Only).
                        is_selected: false
                      - id: 20
                        name: Cascade Node Permissions
                        code: msp_cascade_permissions
                        description: >-
                          Cascade permissions allow roles created at the Parent
                          MSP Node to apply to all child MSP nodes.
                        is_selected: true
                role_type: Custom
                last_modified: December 30, 2025
          headers: {}
          x-apidog-name: ''
        '400':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
                x-apidog-orders: []
              example:
                error:
                  - >-
                    There was an issue processing your request, please try
                    again.
          headers: {}
          x-apidog-name: Basic Error
        '403':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                required:
                  - detail
                x-apidog-orders:
                  - detail
              example:
                detail: Authentication credentials were not provided.
          headers: {}
          x-apidog-name: Unauthenticated
      security:
        - bearer: []
      x-apidog-folder: MSP Guide/API Reference/Role
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/1187388/apis/api-28136246-run
components:
  schemas: {}
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
servers: []
security:
  - bearer: []

```
