Sumo Logic · Capability

Sumo Logic API — roleManagement

Sumo Logic API — roleManagement. 7 operations. Lead operation: Get A List Of Roles.. Self-contained Naftiko capability covering one Sumo Logic business surface.

Run with Naftiko Sumo LogicroleManagement

What You Can Do

GET
Listroles — Get A List Of Roles.
/v1/v1/roles
POST
Createrole — Create A New Role.
/v1/v1/roles
GET
Getrole — Get A Role.
/v1/v1/roles/{id}
PUT
Updaterole — Update A Role.
/v1/v1/roles/{id}
DELETE
Deleterole — Delete A Role.
/v1/v1/roles/{id}
PUT
Assignroletouser — Assign A Role To A User.
/v1/v1/roles/{roleid}/users/{userid}
DELETE
Removerolefromuser — Remove Role From A User.
/v1/v1/roles/{roleid}/users/{userid}

MCP Tools

get-list-roles

Get A List Of Roles.

read-only idempotent
create-new-role

Create A New Role.

get-role

Get A Role.

read-only idempotent
update-role

Update A Role.

idempotent
delete-role

Delete A Role.

idempotent
assign-role-user

Assign A Role To A User.

idempotent
remove-role-user

Remove Role From A User.

idempotent

Capability Spec

sumo-logic-rolemanagement.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Sumo Logic API — roleManagement
  description: 'Sumo Logic API — roleManagement. 7 operations. Lead operation: Get A List Of Roles.. Self-contained Naftiko
    capability covering one Sumo Logic business surface.'
  tags:
  - Sumo Logic
  - roleManagement
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SUMO_LOGIC_API_KEY: SUMO_LOGIC_API_KEY
capability:
  consumes:
  - type: http
    namespace: sumo-logic-rolemanagement
    baseUri: https://api.au.sumologic.com/api
    description: Sumo Logic API — roleManagement business capability. Self-contained, no shared references.
    resources:
    - name: v1-roles
      path: /v1/roles
      operations:
      - name: listroles
        method: GET
        description: Get A List Of Roles.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: Limit the number of roles returned in the response. The number of roles returned may be less than the
            `limit`.
        - name: token
          in: query
          type: string
          description: Continuation token to get the next page of results. A page object with the next continuation token
            is returned in the response body. Subsequent GET requests sho
        - name: sortBy
          in: query
          type: string
          description: Sort the list of roles by the `name` field.
        - name: name
          in: query
          type: string
          description: Only return roles matching the given name.
      - name: createrole
        method: POST
        description: Create A New Role.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v1-roles-id
      path: /v1/roles/{id}
      operations:
      - name: getrole
        method: GET
        description: Get A Role.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Identifier of the role to fetch.
          required: true
      - name: updaterole
        method: PUT
        description: Update A Role.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Identifier of the role to update.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleterole
        method: DELETE
        description: Delete A Role.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Identifier of the role to delete.
          required: true
    - name: v1-roles-roleId-users-userId
      path: /v1/roles/{roleId}/users/{userId}
      operations:
      - name: assignroletouser
        method: PUT
        description: Assign A Role To A User.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Identifier of the role to assign.
          required: true
        - name: userId
          in: path
          type: string
          description: Identifier of the user to assign the role to.
          required: true
      - name: removerolefromuser
        method: DELETE
        description: Remove Role From A User.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          description: Identifier of the role to delete.
          required: true
        - name: userId
          in: path
          type: string
          description: Identifier of the user to remove the role from.
          required: true
    authentication:
      type: basic
      username: '{{env.SUMO_LOGIC_USER}}'
      password: '{{env.SUMO_LOGIC_PASS}}'
  exposes:
  - type: rest
    namespace: sumo-logic-rolemanagement-rest
    port: 8080
    description: REST adapter for Sumo Logic API — roleManagement. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/v1/roles
      name: v1-roles
      description: REST surface for v1-roles.
      operations:
      - method: GET
        name: listroles
        description: Get A List Of Roles.
        call: sumo-logic-rolemanagement.listroles
        with:
          limit: rest.limit
          token: rest.token
          sortBy: rest.sortBy
          name: rest.name
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createrole
        description: Create A New Role.
        call: sumo-logic-rolemanagement.createrole
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/roles/{id}
      name: v1-roles-id
      description: REST surface for v1-roles-id.
      operations:
      - method: GET
        name: getrole
        description: Get A Role.
        call: sumo-logic-rolemanagement.getrole
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updaterole
        description: Update A Role.
        call: sumo-logic-rolemanagement.updaterole
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleterole
        description: Delete A Role.
        call: sumo-logic-rolemanagement.deleterole
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/roles/{roleid}/users/{userid}
      name: v1-roles-roleid-users-userid
      description: REST surface for v1-roles-roleId-users-userId.
      operations:
      - method: PUT
        name: assignroletouser
        description: Assign A Role To A User.
        call: sumo-logic-rolemanagement.assignroletouser
        with:
          roleId: rest.roleId
          userId: rest.userId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removerolefromuser
        description: Remove Role From A User.
        call: sumo-logic-rolemanagement.removerolefromuser
        with:
          roleId: rest.roleId
          userId: rest.userId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: sumo-logic-rolemanagement-mcp
    port: 9090
    transport: http
    description: MCP adapter for Sumo Logic API — roleManagement. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: get-list-roles
      description: Get A List Of Roles.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sumo-logic-rolemanagement.listroles
      with:
        limit: tools.limit
        token: tools.token
        sortBy: tools.sortBy
        name: tools.name
      outputParameters:
      - type: object
        mapping: $.
    - name: create-new-role
      description: Create A New Role.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sumo-logic-rolemanagement.createrole
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-role
      description: Get A Role.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sumo-logic-rolemanagement.getrole
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-role
      description: Update A Role.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sumo-logic-rolemanagement.updaterole
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-role
      description: Delete A Role.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: sumo-logic-rolemanagement.deleterole
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: assign-role-user
      description: Assign A Role To A User.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sumo-logic-rolemanagement.assignroletouser
      with:
        roleId: tools.roleId
        userId: tools.userId
      outputParameters:
      - type: object
        mapping: $.
    - name: remove-role-user
      description: Remove Role From A User.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: sumo-logic-rolemanagement.removerolefromuser
      with:
        roleId: tools.roleId
        userId: tools.userId
      outputParameters:
      - type: object
        mapping: $.