Tenable Infrastructure API

A groupment of directories

Operations 5

GET /api/infrastructures Retrieve all infrastructure instances.
POST /api/infrastructures Create infrastructure instance.
GET /api/infrastructures/{id} Get infrastructure instance by id.
PATCH /api/infrastructures/{id} Update infrastructure instance.
DELETE /api/infrastructures/{id} Delete infrastructure instance.

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-infrastructure-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 email required.

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

OpenAPI Specification

tenable-infrastructure-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Downloads About Infrastructure 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: Infrastructure
  description: A groupment of directories
paths:
  /api/infrastructures:
    get:
      summary: Retrieve all infrastructure instances.
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the GET /infrastructures response
                type: array
                items:
                  description: Infrastructure
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - directories
                  - login
                  properties:
                    id:
                      type: integer
                      description: Unique numeric identifier of the infrastructure
                    name:
                      type: string
                      description: User-defined name of the infrastructure
                    login:
                      type: string
                      description: Username of the AD service account that Tenable.ad should use to connect to the infrastructure's directories
                    directories:
                      type: array
                      items:
                        type: number
                      description: Identifiers of the directories linked to the infrastructure
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Infrastructure
      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: []
    post:
      summary: Create infrastructure instance.
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                description: Validates the POST /infrastructures response
                type: array
                minItems: 1
                items:
                  description: Infrastructure
                  type: object
                  additionalProperties: false
                  required:
                  - id
                  - name
                  - directories
                  - login
                  properties:
                    id:
                      type: integer
                      description: Unique numeric identifier of the infrastructure
                    name:
                      type: string
                      description: User-defined name of the infrastructure
                    login:
                      type: string
                      description: Username of the AD service account that Tenable.ad should use to connect to the infrastructure's directories
                    directories:
                      type: array
                      items:
                        type: number
                      description: Identifiers of the directories linked to the infrastructure
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Infrastructure
      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 /infrastructures request
              type: array
              minItems: 1
              items:
                type: object
                additionalProperties: false
                required:
                - name
                - login
                - password
                properties:
                  name:
                    type: string
                  login:
                    type: string
                  password:
                    type: string
                    x-secret: true
  /api/infrastructures/{id}:
    get:
      summary: Get infrastructure instance by id.
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Infrastructure
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - directories
                - login
                properties:
                  id:
                    type: integer
                  name:
                    type: string
                  login:
                    type: string
                  directories:
                    type: array
                    items:
                      type: number
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Infrastructure
      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: []
    patch:
      summary: Update infrastructure instance.
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                description: Infrastructure
                type: object
                additionalProperties: false
                required:
                - id
                - name
                - login
                properties:
                  id:
                    type: integer
                  name:
                    type: string
                  login:
                    type: string
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Infrastructure
      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: Validates the PATCH /infrastructures/:id request
              type: object
              additionalProperties: false
              properties:
                name:
                  type: string
                login:
                  type: string
                password:
                  type: string
                  x-secret: true
    delete:
      summary: Delete infrastructure instance.
      description: 'Required license type: ioa, ioaPreview, ioe'
      responses:
        '204':
          description: ''
          content:
            application/json:
              schema:
                description: Infrastructure
                additionalProperties: false
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      tags:
      - Infrastructure
      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: []
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