Tenable Profile API

A set of Checker option value

OpenAPI Specification

tenable-profile-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.0
  title: Downloads About Profile API
  description: 'The Downloads API enables customers to access and download installation and update files for available Tenable products. You can use the API endpoints to list product pages, list downloads available for a specific product, and to download a file. The endpoints can also be used to determine and download the latest version of a file to facilitate the automation of an installation.


    **Note:** The Tenable Downloads API uses a different server URL than the Tenable Vulnerability Management API:


    `https://www.tenable.com/downloads/api/v2/pages`.


    ### Authentication


    Like the Downloads website, certain files require authentication to download. When files have a `"requires_auth": true` attribute on the product list page, the Downloads API uses bearer token authentication and requires a valid token in the Authorization header to download the file:

    ```

    Authorization: Bearer AbCdEf123456

    ```


    To access or reset your authentication token, navigate to the [Authentication Token](https://www.tenable.com/downloads/api-docs) page.


    Examples of product downloads that **do not** require authentication include Nessus and Nessus Agents.'
servers:
- url: https://www.tenable.com/downloads/api/v2
security:
- Bearer: []
tags:
- name: Profile
  description: A set of Checker option value
paths:
  /api/profiles:
    get:
      summary: Retrieve all profile instances.
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the get /profiles response
                type: array
                items:
                  description: Profile
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - deleted
                  - directories
                  - dirty
                  - hasEverBeenCommitted
                  properties:
                    id:
                      type: number
                      description: Unique numeric identifier of the profile
                    name:
                      type: string
                      description: User-defined name of the profile
                    deleted:
                      type: boolean
                      deprecated: true
                      description: Deprecated, profiles aren't soft-deleted anymore.
                    directories:
                      type: array
                      items:
                        type: number
                      deprecated: true
                      description: Deprecated, used to indicates which directories the profile applied to. See "directoryId" property in indicator options instead.
                      x-$comment: TO REMOVE once this field is not used anymore. Delete key DIRECTORY_PER_PROFILE
                    dirty:
                      type: boolean
                      description: Whether there are pending changes in the profile options
                    hasEverBeenCommitted:
                      type: boolean
                      description: Whether the profile has ever been applied
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: []
    post:
      summary: Create profile instance.
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the get /profiles response
                type: array
                minItems: 1
                items:
                  description: Profile
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - deleted
                  - directories
                  - dirty
                  - hasEverBeenCommitted
                  properties:
                    id:
                      type: number
                      description: Unique numeric identifier of the profile
                    name:
                      type: string
                      description: User-defined name of the profile
                    deleted:
                      type: boolean
                      deprecated: true
                      description: Deprecated, profiles aren't soft-deleted anymore.
                    directories:
                      type: array
                      items:
                        type: number
                      deprecated: true
                      description: Deprecated, used to indicates which directories the profile applied to. See "directoryId" property in indicator options instead.
                      x-$comment: TO REMOVE once this field is not used anymore. Delete key DIRECTORY_PER_PROFILE
                    dirty:
                      type: boolean
                      description: Whether there are pending changes in the profile options
                    hasEverBeenCommitted:
                      type: boolean
                      description: Whether the profile has ever been applied
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: Profile
              type: array
              minItems: 1
              items:
                type: object
                additionalProperties: false
                required:
                - name
                - directories
                properties:
                  name:
                    type: string
                    pattern: ^(?!([tT][eE][nN][aA][bB][lL][eE])$).*$
                  directories:
                    type: array
                    items:
                      type: integer
  /api/profiles/{id}:
    get:
      summary: Get profile instance by id.
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Profile
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - deleted
                - directories
                - dirty
                - hasEverBeenCommitted
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  deleted:
                    type: boolean
                  directories:
                    type: array
                    items:
                      type: number
                  dirty:
                    type: boolean
                  hasEverBeenCommitted:
                    type: boolean
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: []
    patch:
      summary: Update profile instance.
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Profile
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - deleted
                - directories
                - dirty
                - hasEverBeenCommitted
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  deleted:
                    type: boolean
                  directories:
                    type: array
                    items:
                      type: number
                  dirty:
                    type: boolean
                  hasEverBeenCommitted:
                    type: boolean
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: Profile
              type: object
              additionalProperties: false
              properties:
                name:
                  type: string
                  pattern: ^(?!([tT][eE][nN][aA][bB][lL][eE])$).*$
                deleted:
                  type: boolean
                directories:
                  type: array
                  items:
                    type: number
                    minimum: 0
                    maximum: 2147483647
    delete:
      summary: Delete profile instance.
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Profile
                nullable: true
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: []
  /api/profiles/from/{fromId}:
    post:
      summary: Creates a new profile from another one
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the POST /profiles/from/{fromId} response
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - deleted
                - directories
                - dirty
                - hasEverBeenCommitted
                properties:
                  id:
                    type: number
                    description: Unique numeric identifier of the profile
                  name:
                    type: string
                    description: User-defined name of the profile
                  deleted:
                    type: boolean
                    deprecated: true
                    description: Deprecated, profiles aren't soft-deleted anymore.
                  directories:
                    type: array
                    items:
                      type: number
                    deprecated: true
                    description: Deprecated, used to indicates which directories the profile applied to. See "directoryId" property in indicator options instead.
                    x-$comment: TO REMOVE once this field is not used anymore. Delete key DIRECTORY_PER_PROFILE
                  dirty:
                    type: boolean
                    description: Whether there are pending changes in the profile options
                  hasEverBeenCommitted:
                    type: boolean
                    description: Whether the profile has ever been applied
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: Profile
              type: object
              additionalProperties: false
              required:
              - name
              - directories
              properties:
                name:
                  type: string
                  pattern: ^(?!([tT][eE][nN][aA][bB][lL][eE])$).*$
                directories:
                  type: array
                  items:
                    type: integer
  /api/profiles/{id}/unstage:
    post:
      summary: Unstages change of the related profile
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Profile
                nullable: true
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: []
  /api/profiles/{id}/commit:
    post:
      summary: Commits change of the related profile
      description: 'Required license type: ioe, ioa, ioaPreview'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Profile
                nullable: true
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Profile
      x-tenablead-required-product-license-type:
      - ioe
      - ioa
      - ioaPreview
      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: []
components:
  securitySchemes:
    Bearer:
      type: apiKey
      in: header
      name: Authorization
      description: 'Example: Bearer {{token}}'
x-readme:
  proxy-enabled: false
  explorer-enabled: true
  samples-enabled: true
  samples-languages:
  - python
  - curl
  - node
  - powershell
  - ruby
  - javascript
  - objectivec
  - java
  - php
  - csharp
  - go
  - swift
  - kotlin