RingCentral · Capability

RingCentral API — Role Management

RingCentral API — Role Management. 15 operations. Lead operation: List Company Assigned Roles. Self-contained Naftiko capability covering one Ringcentral business surface.

Run with Naftiko RingcentralRole Management

What You Can Do

GET
Listassignedroles — List Company Assigned Roles
/v1/restapi/v1-0/account/{accountid}/assigned-role
GET
Listofavailableforassigningroles — List Assignable Roles
/v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assignable-roles
GET
Listuserassignedroles — List User Assigned Roles
/v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assigned-role
PUT
Updateuserassignedroles — Update User Assigned Roles
/v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assigned-role
PUT
Assigndefaultrole — Assign Default Role
/v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assigned-role/default
GET
Listuserroles — List Company User Roles
/v1/restapi/v1-0/account/{accountid}/user-role
POST
Createcustomrole — Create Custom Role
/v1/restapi/v1-0/account/{accountid}/user-role
GET
Readdefaultrole — Get Default User Role
/v1/restapi/v1-0/account/{accountid}/user-role/default
PUT
Updatedefaultuserrole — Set Default User Role
/v1/restapi/v1-0/account/{accountid}/user-role/default
GET
Readuserrole — Get User Role
/v1/restapi/v1-0/account/{accountid}/user-role/{roleid}
PUT
Updateuserrole — Update User Role
/v1/restapi/v1-0/account/{accountid}/user-role/{roleid}
DELETE
Deletecustomrole — Delete Custom Role
/v1/restapi/v1-0/account/{accountid}/user-role/{roleid}
POST
Assignmultipleuserroles — Assign Multiple User Roles
/v1/restapi/v1-0/account/{accountid}/user-role/{roleid}/bulk-assign
GET
Liststandarduserrole — List Standard User Roles
/v1/restapi/v1-0/dictionary/user-role
GET
Readstandarduserrole — Get Standard User Role
/v1/restapi/v1-0/dictionary/user-role/{roleid}

MCP Tools

list-company-assigned-roles

List Company Assigned Roles

read-only idempotent
list-assignable-roles

List Assignable Roles

read-only idempotent
list-user-assigned-roles

List User Assigned Roles

read-only idempotent
update-user-assigned-roles

Update User Assigned Roles

idempotent
assign-default-role

Assign Default Role

idempotent
list-company-user-roles

List Company User Roles

read-only idempotent
create-custom-role

Create Custom Role

get-default-user-role

Get Default User Role

read-only idempotent
set-default-user-role

Set Default User Role

idempotent
get-user-role

Get User Role

read-only idempotent
update-user-role

Update User Role

idempotent
delete-custom-role

Delete Custom Role

idempotent
assign-multiple-user-roles

Assign Multiple User Roles

list-standard-user-roles

List Standard User Roles

read-only idempotent
get-standard-user-role

Get Standard User Role

read-only idempotent

Capability Spec

platform-role-management.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: RingCentral API — Role Management
  description: 'RingCentral API — Role Management. 15 operations. Lead operation: List Company Assigned Roles. Self-contained
    Naftiko capability covering one Ringcentral business surface.'
  tags:
  - Ringcentral
  - Role Management
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    RINGCENTRAL_API_KEY: RINGCENTRAL_API_KEY
capability:
  consumes:
  - type: http
    namespace: platform-role-management
    baseUri: https://platform.ringcentral.com
    description: RingCentral API — Role Management business capability. Self-contained, no shared references.
    resources:
    - name: restapi-v1.0-account-accountId-assigned-role
      path: /restapi/v1.0/account/{accountId}/assigned-role
      operations:
      - name: listassignedroles
        method: GET
        description: List Company Assigned Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: showHidden
          in: query
          type: boolean
          description: Specifies if hidden roles are shown or not
    - name: restapi-v1.0-account-accountId-extension-extensionId-assignable-roles
      path: /restapi/v1.0/account/{accountId}/extension/{extensionId}/assignable-roles
      operations:
      - name: listofavailableforassigningroles
        method: GET
        description: List Assignable Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: restapi-v1.0-account-accountId-extension-extensionId-assigned-role
      path: /restapi/v1.0/account/{accountId}/extension/{extensionId}/assigned-role
      operations:
      - name: listuserassignedroles
        method: GET
        description: List User Assigned Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: showHidden
          in: query
          type: boolean
          description: Specifies if hidden roles are shown or not
      - name: updateuserassignedroles
        method: PUT
        description: Update User Assigned Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: restapi-v1.0-account-accountId-extension-extensionId-assigned-role-default
      path: /restapi/v1.0/account/{accountId}/extension/{extensionId}/assigned-role/default
      operations:
      - name: assigndefaultrole
        method: PUT
        description: Assign Default Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: restapi-v1.0-account-accountId-user-role
      path: /restapi/v1.0/account/{accountId}/user-role
      operations:
      - name: listuserroles
        method: GET
        description: List Company User Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: custom
          in: query
          type: boolean
          description: Specifies whether to return custom roles or predefined roles only.
      - name: createcustomrole
        method: POST
        description: Create Custom Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: restapi-v1.0-account-accountId-user-role-default
      path: /restapi/v1.0/account/{accountId}/user-role/default
      operations:
      - name: readdefaultrole
        method: GET
        description: Get Default User Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatedefaultuserrole
        method: PUT
        description: Set Default User Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: restapi-v1.0-account-accountId-user-role-roleId
      path: /restapi/v1.0/account/{accountId}/user-role/{roleId}
      operations:
      - name: readuserrole
        method: GET
        description: Get User Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Internal identifier of a role
          required: true
        - name: advancedPermissions
          in: query
          type: boolean
          description: Specifies whether to return advanced permissions capabilities within `permissionsCapabilities` resource.
      - name: updateuserrole
        method: PUT
        description: Update User Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Internal identifier of a role
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletecustomrole
        method: DELETE
        description: Delete Custom Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Internal identifier of a role
          required: true
        - name: validateOnly
          in: query
          type: boolean
          description: Specifies that role should be validated prior to deletion, whether
    - name: restapi-v1.0-account-accountId-user-role-roleId-bulk-assign
      path: /restapi/v1.0/account/{accountId}/user-role/{roleId}/bulk-assign
      operations:
      - name: assignmultipleuserroles
        method: POST
        description: Assign Multiple User Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Internal identifier of a role
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: restapi-v1.0-dictionary-user-role
      path: /restapi/v1.0/dictionary/user-role
      operations:
      - name: liststandarduserrole
        method: GET
        description: List Standard User Roles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: servicePlanId
          in: query
          type: string
          description: Internal identifier of a service plan.
        - name: advancedPermissions
          in: query
          type: boolean
          description: Specifies whether to return advanced permissions capabilities within `permissionsCapabilities` resource.
    - name: restapi-v1.0-dictionary-user-role-roleId
      path: /restapi/v1.0/dictionary/user-role/{roleId}
      operations:
      - name: readstandarduserrole
        method: GET
        description: Get Standard User Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Internal identifier of a role
          required: true
    authentication:
      type: bearer
      token: '{{env.RINGCENTRAL_API_KEY}}'
  exposes:
  - type: rest
    namespace: platform-role-management-rest
    port: 8080
    description: REST adapter for RingCentral API — Role Management. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/restapi/v1-0/account/{accountid}/assigned-role
      name: restapi-v1-0-account-accountid-assigned-role
      description: REST surface for restapi-v1.0-account-accountId-assigned-role.
      operations:
      - method: GET
        name: listassignedroles
        description: List Company Assigned Roles
        call: platform-role-management.listassignedroles
        with:
          showHidden: rest.showHidden
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assignable-roles
      name: restapi-v1-0-account-accountid-extension-extensionid-assignable-roles
      description: REST surface for restapi-v1.0-account-accountId-extension-extensionId-assignable-roles.
      operations:
      - method: GET
        name: listofavailableforassigningroles
        description: List Assignable Roles
        call: platform-role-management.listofavailableforassigningroles
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assigned-role
      name: restapi-v1-0-account-accountid-extension-extensionid-assigned-role
      description: REST surface for restapi-v1.0-account-accountId-extension-extensionId-assigned-role.
      operations:
      - method: GET
        name: listuserassignedroles
        description: List User Assigned Roles
        call: platform-role-management.listuserassignedroles
        with:
          showHidden: rest.showHidden
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateuserassignedroles
        description: Update User Assigned Roles
        call: platform-role-management.updateuserassignedroles
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/assigned-role/default
      name: restapi-v1-0-account-accountid-extension-extensionid-assigned-role-default
      description: REST surface for restapi-v1.0-account-accountId-extension-extensionId-assigned-role-default.
      operations:
      - method: PUT
        name: assigndefaultrole
        description: Assign Default Role
        call: platform-role-management.assigndefaultrole
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/user-role
      name: restapi-v1-0-account-accountid-user-role
      description: REST surface for restapi-v1.0-account-accountId-user-role.
      operations:
      - method: GET
        name: listuserroles
        description: List Company User Roles
        call: platform-role-management.listuserroles
        with:
          custom: rest.custom
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcustomrole
        description: Create Custom Role
        call: platform-role-management.createcustomrole
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/user-role/default
      name: restapi-v1-0-account-accountid-user-role-default
      description: REST surface for restapi-v1.0-account-accountId-user-role-default.
      operations:
      - method: GET
        name: readdefaultrole
        description: Get Default User Role
        call: platform-role-management.readdefaultrole
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatedefaultuserrole
        description: Set Default User Role
        call: platform-role-management.updatedefaultuserrole
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/user-role/{roleid}
      name: restapi-v1-0-account-accountid-user-role-roleid
      description: REST surface for restapi-v1.0-account-accountId-user-role-roleId.
      operations:
      - method: GET
        name: readuserrole
        description: Get User Role
        call: platform-role-management.readuserrole
        with:
          roleId: rest.roleId
          advancedPermissions: rest.advancedPermissions
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateuserrole
        description: Update User Role
        call: platform-role-management.updateuserrole
        with:
          roleId: rest.roleId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecustomrole
        description: Delete Custom Role
        call: platform-role-management.deletecustomrole
        with:
          roleId: rest.roleId
          validateOnly: rest.validateOnly
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/account/{accountid}/user-role/{roleid}/bulk-assign
      name: restapi-v1-0-account-accountid-user-role-roleid-bulk-assign
      description: REST surface for restapi-v1.0-account-accountId-user-role-roleId-bulk-assign.
      operations:
      - method: POST
        name: assignmultipleuserroles
        description: Assign Multiple User Roles
        call: platform-role-management.assignmultipleuserroles
        with:
          roleId: rest.roleId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/dictionary/user-role
      name: restapi-v1-0-dictionary-user-role
      description: REST surface for restapi-v1.0-dictionary-user-role.
      operations:
      - method: GET
        name: liststandarduserrole
        description: List Standard User Roles
        call: platform-role-management.liststandarduserrole
        with:
          servicePlanId: rest.servicePlanId
          advancedPermissions: rest.advancedPermissions
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/restapi/v1-0/dictionary/user-role/{roleid}
      name: restapi-v1-0-dictionary-user-role-roleid
      description: REST surface for restapi-v1.0-dictionary-user-role-roleId.
      operations:
      - method: GET
        name: readstandarduserrole
        description: Get Standard User Role
        call: platform-role-management.readstandarduserrole
        with:
          roleId: rest.roleId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: platform-role-management-mcp
    port: 9090
    transport: http
    description: MCP adapter for RingCentral API — Role Management. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: list-company-assigned-roles
      description: List Company Assigned Roles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.listassignedroles
      with:
        showHidden: tools.showHidden
      outputParameters:
      - type: object
        mapping: $.
    - name: list-assignable-roles
      description: List Assignable Roles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.listofavailableforassigningroles
      outputParameters:
      - type: object
        mapping: $.
    - name: list-user-assigned-roles
      description: List User Assigned Roles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.listuserassignedroles
      with:
        showHidden: tools.showHidden
      outputParameters:
      - type: object
        mapping: $.
    - name: update-user-assigned-roles
      description: Update User Assigned Roles
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-role-management.updateuserassignedroles
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: assign-default-role
      description: Assign Default Role
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-role-management.assigndefaultrole
      outputParameters:
      - type: object
        mapping: $.
    - name: list-company-user-roles
      description: List Company User Roles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.listuserroles
      with:
        custom: tools.custom
      outputParameters:
      - type: object
        mapping: $.
    - name: create-custom-role
      description: Create Custom Role
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: platform-role-management.createcustomrole
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-default-user-role
      description: Get Default User Role
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.readdefaultrole
      outputParameters:
      - type: object
        mapping: $.
    - name: set-default-user-role
      description: Set Default User Role
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-role-management.updatedefaultuserrole
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-user-role
      description: Get User Role
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.readuserrole
      with:
        roleId: tools.roleId
        advancedPermissions: tools.advancedPermissions
      outputParameters:
      - type: object
        mapping: $.
    - name: update-user-role
      description: Update User Role
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-role-management.updateuserrole
      with:
        roleId: tools.roleId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-custom-role
      description: Delete Custom Role
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: platform-role-management.deletecustomrole
      with:
        roleId: tools.roleId
        validateOnly: tools.validateOnly
      outputParameters:
      - type: object
        mapping: $.
    - name: assign-multiple-user-roles
      description: Assign Multiple User Roles
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: platform-role-management.assignmultipleuserroles
      with:
        roleId: tools.roleId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-standard-user-roles
      description: List Standard User Roles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.liststandarduserrole
      with:
        servicePlanId: tools.servicePlanId
        advancedPermissions: tools.advancedPermissions
      outputParameters:
      - type: object
        mapping: $.
    - name: get-standard-user-role
      description: Get Standard User Role
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-role-management.readstandarduserrole
      with:
        roleId: tools.roleId
      outputParameters:
      - type: object
        mapping: $.