Tenable Role API

Groupment of permissions that may be assigned to several users

Business capability
Identity & Access Management BC-620.20

Operations 8

GET /api/roles Retrieve all role instances #
POST /api/roles Create role instance #
GET /api/roles/user-creation-defaults Return the default roles for user creation #
GET /api/roles/{id} Get role instance by id #
PATCH /api/roles/{id} Update role instance #
DELETE /api/roles/{id} Delete role instance #
POST /api/roles/from/{fromId} Creates a new role from another one #
PUT /api/roles/{id}/permissions Replace permission list for a role #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tenable-role-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tenable-role-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Identity Exposure Role API
  description: API to interact with Identity Exposure.
  version: production
servers:
- url: '{protocol}://customer.tenable.ad'
  variables:
    protocol:
      default: https
tags:
- name: Role
  description: Groupment of permissions that may be assigned to several users
paths:
  /api/roles:
    get:
      summary: Retrieve all role instances
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the get /roles response
                type: array
                items:
                  description: Role
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - description
                  - permissions
                  properties:
                    id:
                      type: number
                    name:
                      type: string
                    description:
                      type: string
                    permissions:
                      type: array
                      items:
                        description: Permission
                        type: object
                        additionalProperties: false
                        required:
                        - entityIds
                        - action
                        - entityName
                        properties:
                          entityName:
                            type: string
                          action:
                            type: string
                          entityIds:
                            type:
                            - array
                            - 'null'
                            items:
                              type: string
                          dynamicId:
                            type:
                            - string
                            - 'null'
                            enum:
                            - self-user-id
                            - null
                            default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      security:
      - ApiKey: []
      operationId: getApiRoles
      x-operation-id-source: derived
    post:
      summary: Create role instance
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the get /roles response
                type: array
                minItems: 1
                items:
                  description: Role
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - description
                  - permissions
                  properties:
                    id:
                      type: number
                    name:
                      type: string
                    description:
                      type: string
                    permissions:
                      type: array
                      items:
                        description: Permission
                        type: object
                        additionalProperties: false
                        required:
                        - entityIds
                        - action
                        - entityName
                        properties:
                          entityName:
                            type: string
                          action:
                            type: string
                          entityIds:
                            type:
                            - array
                            - 'null'
                            items:
                              type: string
                          dynamicId:
                            type:
                            - string
                            - 'null'
                            enum:
                            - self-user-id
                            - null
                            default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      security:
      - ApiKey: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              description: Validates the POST /roles request
              type: array
              minItems: 1
              items:
                type: object
                additionalProperties: false
                required:
                - name
                - description
                properties:
                  name:
                    type: string
                  description:
                    type: string
      operationId: postApiRoles
      x-operation-id-source: derived
  /api/roles/user-creation-defaults:
    get:
      summary: Return the default roles for user creation
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the get /roles response
                type: array
                items:
                  description: Role
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - description
                  - permissions
                  properties:
                    id:
                      type: number
                    name:
                      type: string
                    description:
                      type: string
                    permissions:
                      type: array
                      items:
                        description: Permission
                        type: object
                        additionalProperties: false
                        required:
                        - entityIds
                        - action
                        - entityName
                        properties:
                          entityName:
                            type: string
                          action:
                            type: string
                          entityIds:
                            type:
                            - array
                            - 'null'
                            items:
                              type: string
                          dynamicId:
                            type:
                            - string
                            - 'null'
                            enum:
                            - self-user-id
                            - null
                            default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      security:
      - ApiKey: []
      operationId: getApiRolesUserCreationDefaults
      x-operation-id-source: derived
  /api/roles/{id}:
    get:
      summary: Get role instance by id
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Role
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - description
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  description:
                    type: string
                  permissions:
                    type: array
                    items:
                      description: Permission
                      type: object
                      additionalProperties: false
                      required:
                      - entityIds
                      - action
                      - entityName
                      properties:
                        entityName:
                          type: string
                        action:
                          type: string
                        entityIds:
                          type:
                          - array
                          - 'null'
                          items:
                            type: string
                        dynamicId:
                          type:
                          - string
                          - 'null'
                          enum:
                          - self-user-id
                          - null
                          default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      - name: id
        in: path
        schema:
          type: string
          pattern: ^[0-9]+$
          x-patternError: should be a numerical string
        required: true
        deprecated: false
      security:
      - ApiKey: []
      operationId: getApiRolesById
      x-operation-id-source: derived
    patch:
      summary: Update role instance
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Role
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - description
                - permissions
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  description:
                    type: string
                  permissions:
                    type: array
                    items:
                      description: Permission
                      type: object
                      additionalProperties: false
                      required:
                      - entityIds
                      - action
                      - entityName
                      properties:
                        entityName:
                          type: string
                        action:
                          type: string
                        entityIds:
                          type:
                          - array
                          - 'null'
                          items:
                            type: string
                        dynamicId:
                          type:
                          - string
                          - 'null'
                          enum:
                          - self-user-id
                          - null
                          default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      - name: id
        in: path
        schema:
          type: string
          pattern: ^[0-9]+$
          x-patternError: should be a numerical string
        required: true
        deprecated: false
      security:
      - ApiKey: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              description: Role
              type: object
              additionalProperties: false
              properties:
                name:
                  type: string
                description:
                  type: string
      operationId: patchApiRolesById
      x-operation-id-source: derived
    delete:
      summary: Delete role instance
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Role
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      - name: id
        in: path
        schema:
          type: string
          pattern: ^[0-9]+$
          x-patternError: should be a numerical string
        required: true
        deprecated: false
      security:
      - ApiKey: []
      operationId: deleteApiRolesById
      x-operation-id-source: derived
  /api/roles/from/{fromId}:
    post:
      summary: Creates a new role from another one
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the POST /roles/from/{fromId} response
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - description
                - permissions
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  description:
                    type: string
                  permissions:
                    type: array
                    items:
                      description: Permission
                      type: object
                      additionalProperties: false
                      required:
                      - entityIds
                      - action
                      - entityName
                      properties:
                        entityName:
                          type: string
                        action:
                          type: string
                        entityIds:
                          type:
                          - array
                          - 'null'
                          items:
                            type: string
                        dynamicId:
                          type:
                          - string
                          - 'null'
                          enum:
                          - self-user-id
                          - null
                          default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      - name: fromId
        in: path
        schema:
          type: string
          pattern: ^[0-9]+$
          x-patternError: should be a numerical string
        required: true
        deprecated: false
      security:
      - ApiKey: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              description: Role copy from
              type: object
              additionalProperties: false
              required:
              - name
              properties:
                name:
                  type: string
      operationId: postApiRolesFromByFromId
      x-operation-id-source: derived
  /api/roles/{id}/permissions:
    put:
      summary: Replace permission list for a role
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the POST /roles/{id}/permissions response
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - description
                - permissions
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  description:
                    type: string
                  permissions:
                    type: array
                    items:
                      description: Permission
                      type: object
                      additionalProperties: false
                      required:
                      - entityIds
                      - action
                      - entityName
                      properties:
                        entityName:
                          type: string
                        action:
                          type: string
                        entityIds:
                          type:
                          - array
                          - 'null'
                          items:
                            type: string
                        dynamicId:
                          type:
                          - string
                          - 'null'
                          enum:
                          - self-user-id
                          - null
                          default: null
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Role
      x-tenablead-required-product-license-type:
      - ioa
      - ioaPreview
      - ioe
      parameters:
      - name: x-api-key
        description: The user's API key
        in: header
        schema:
          type: string
          default: put-your-api-key-here
        required: true
        deprecated: false
      - name: id
        in: path
        schema:
          type: string
          pattern: ^[0-9]+$
          x-patternError: should be a numerical string
        required: true
        deprecated: false
      security:
      - ApiKey: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              description: Role add-permission
              type: array
              items:
                description: Permission
                type: object
                additionalProperties: false
                required:
                - entityIds
                - action
                - entityName
                properties:
                  entityName:
                    type: string
                  action:
                    type: string
                  entityIds:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                  dynamicId:
                    type:
                    - string
                    - 'null'
                    enum:
                    - self-user-id
                    - null
                    default: null
      operationId: putApiRolesByIdPermissions
      x-operation-id-source: derived
components:
  securitySchemes:
    ApiKey:
      name: x-api-key
      description: The user's API key
      in: header
      type: apiKey
x-readme:
  explorer-enabled: true
  proxy-enabled: true