Forward Networks Classic Devices API

Specify the network devices to collect from and model

Operations 12

GET /networks/{networkId}/classic-devices Get all classic devices #
POST /networks/{networkId}/classic-devices Add a new classic device #
PATCH /networks/{networkId}/classic-devices Update specific classic devices #
POST /networks/{networkId}/classic-devices?action=addBatch Add new classic devices #
POST /networks/{networkId}/classic-devices?action=deleteAll Delete all of a network’s classic devices #
POST /networks/{networkId}/classic-devices?action=deleteBatch Delete specific classic devices #
POST /networks/{networkId}/classic-devices?action=getBatch Get specific classic devices #
POST /networks/{networkId}/classic-devices?action=putBatch Add or update classic devices #
GET /networks/{networkId}/classic-devices/{deviceName} Get a classic device #
PUT /networks/{networkId}/classic-devices/{deviceName} Add or update a classic device #
PATCH /networks/{networkId}/classic-devices/{deviceName} Update a classic device #
DELETE /networks/{networkId}/classic-devices/{deviceName} Delete a classic device #

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/forward-networks-classic-devices-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

forward-networks-classic-devices-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 'Forward Networks: Complete Aliases Classic Devices API'
  description: Model and verify networks
  contact:
    email: support@forwardnetworks.com
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT
  version: '26.6'
servers:
- url: /api
tags:
- name: Classic Devices
  description: Specify the network devices to collect from and model
  summary: Classic Devices
paths:
  /networks/{networkId}/classic-devices:
    get:
      tags:
      - Classic Devices
      summary: Get all classic devices
      operationId: getClassicDevices
      x-position: 1
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: with
        in: query
        schema:
          type: array
          items:
            type: string
            enum:
            - tags
            - locationId
            - testResult
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevices'
      security:
      - api_token: []
    post:
      tags:
      - Classic Devices
      summary: Add a new classic device
      operationId: addClassicDevice
      x-position: 3
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewClassicDevice'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevice'
      security:
      - api_token: []
    patch:
      tags:
      - Classic Devices
      summary: Update specific classic devices
      description: 'All JSON properties in the `update` object are optional. Include only the properties you wish

        to change.'
      operationId: patchClassicDevices
      x-position: 8
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClassicDevicesPatch'
        required: true
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
  /networks/{networkId}/classic-devices?action=addBatch:
    post:
      tags:
      - Classic Devices
      summary: Add new classic devices
      operationId: addClassicDevices
      x-position: 4
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/NewClassicDevice'
        required: true
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
  /networks/{networkId}/classic-devices?action=deleteAll:
    post:
      tags:
      - Classic Devices
      summary: Delete all of a network’s classic devices
      operationId: deleteAllClassicDevices
      x-position: 7
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
  /networks/{networkId}/classic-devices?action=deleteBatch:
    post:
      tags:
      - Classic Devices
      summary: Delete specific classic devices
      operationId: deleteClassicDevices
      x-position: 6
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceCriteria'
        required: true
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
  /networks/{networkId}/classic-devices?action=getBatch:
    post:
      tags:
      - Classic Devices
      summary: Get specific classic devices
      operationId: getSpecificClassicDevices
      x-position: 2
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: with
        in: query
        schema:
          type: array
          items:
            type: string
            enum:
            - tags
            - locationId
            - testResult
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceNames'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevices'
      security:
      - api_token: []
  /networks/{networkId}/classic-devices?action=putBatch:
    post:
      tags:
      - Classic Devices
      summary: Add or update classic devices
      operationId: putClassicDevices
      x-position: 5
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/NewClassicDevice'
        required: true
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
  /networks/{networkId}/classic-devices/{deviceName}:
    get:
      tags:
      - Classic Devices
      summary: Get a classic device
      operationId: getClassicDevice
      x-position: 9
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: deviceName
        in: path
        required: true
        schema:
          type: string
      - name: with
        in: query
        schema:
          type: array
          items:
            type: string
            enum:
            - tags
            - locationId
            - testResult
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevice'
      security:
      - api_token: []
    put:
      tags:
      - Classic Devices
      summary: Add or update a classic device
      operationId: putClassicDevice
      x-position: 10
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: deviceName
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewClassicDevice'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevice'
      security:
      - api_token: []
    patch:
      tags:
      - Classic Devices
      summary: Update a classic device
      description: 'All JSON properties in the request body are optional. Include only the properties you wish to

        change.'
      operationId: patchClassicDevice
      x-position: 11
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: deviceName
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClassicDevicePatch'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDevice'
      security:
      - api_token: []
    delete:
      tags:
      - Classic Devices
      summary: Delete a classic device
      operationId: deleteClassicDevice
      x-position: 12
      parameters:
      - name: networkId
        in: path
        required: true
        schema:
          type: string
      - name: deviceName
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
          content: {}
      security:
      - api_token: []
components:
  schemas:
    ClassicDevicesPatch:
      type: object
      properties:
        names:
          type: array
          items:
            type: string
        update:
          $ref: '#/components/schemas/ClassicDevicePatch'
    DeviceCriteria:
      type: object
      required:
      - names
      properties:
        names:
          type: array
          items:
            type: string
          examples:
          - - router_01
            - router_02
    NewClassicDevice:
      type: object
      required:
      - name
      - host
      properties:
        name:
          type: string
          description: 'A name that’s unique (ignoring case) among all of the network’s collection source names. May consist of

            letters, digits, dots, hyphens, and underscores.'
          examples:
          - my-router
        type:
          $ref: '#/components/schemas/ClassicDeviceType'
          description: Auto-detected during connectivity testing if unspecified.
          examples:
          - checkpoint_ssh
        host:
          type: string
          description: IP address or hostname used to connect to the device.
          examples:
          - 10.121.7.13
        port:
          type: integer
          format: int32
          minimum: 1
          maximum: 65535
          description: 'Port used to connect to the device. The default value depends on the collection protocol: 22 for SSH, 443

            for HTTPS, etc.'
          examples:
          - 22
        cliCredentialId:
          type: string
          description: 'The `id` of a CliCredential of type `LOGIN`. Relevant for devices collected via SSH or Telnet. Credential

            auto-association will be attempted using credentials configured to allow it if this property is unspecified

            and collecting from this device requires this kind of credential.'
          examples:
          - L-3
        cliCredential2Id:
          type: string
          description: 'The `id` of a CliCredential of type `PRIVILEGED_MODE` (for Cisco-like or Checkpoint devices) or `SHELL` (for

            Avi controllers). On Checkpoint, this credential is used for TACACS privilege escalation. Credential

            auto-association will be attempted using credentials configured to allow it if this property is unspecified

            and collecting from this device requires this kind of credential.'
          examples:
          - PM-2
        cliCredential3Id:
          type: string
          description: 'The `id` of a CliCredential of type `EXPERT_MODE` (for Checkpoint devices). Can be set with or without a

            `PRIVILEGED_MODE` credential for `cliCredential2Id`. Credential auto-association will be attempted using

            credentials configured to allow it if this property is unspecified and collecting from this device requires

            this kind of credential.'
          examples:
          - EM-6
        httpCredentialId:
          type: string
          description: 'The `id` of an HttpCredential of type `LOGIN` or `API_KEY`. Relevant for devices collected via HTTPS or

            HTTP. Credential auto-association will be attempted using credentials configured to allow it if this

            property is unspecified and collecting from this device requires this kind of credential.'
          examples:
          - H-5
        snmpCredentialId:
          type: string
          description: 'The `id` of an SnmpCredential. Used to collect performance data (counters) if `enableSnmpCollection` is

            true. Credential auto-association will be attempted using credentials configured to allow it if this

            property is unspecified and collecting from this device requires this kind of credential.'
          examples:
          - S-4
        jumpServerId:
          type: string
          description: The `id` of the JumpServer that should be used to collect from this device.
          examples:
          - J-0
        disableIpv6Collection:
          type: boolean
          description: Disables collection of any IPv6 forwarding state on the device. Defaults to false.
          examples:
          - false
        fullCollectionLog:
          type: boolean
          description: Enables more detailed logging during collection. Defaults to false.
          examples:
          - false
        paginationMode:
          $ref: '#/components/schemas/PaginationMode'
          description: 'The pagination mode to use during collection. Relevant for devices collected via SSH or Telnet. Defaults to

            `DISABLE_PAGINATION`. Per-command pagination (such as appending `| more`) may be used if set to

            `ENABLE_PAGINATION` for a device that doesn’t have a per-session pagination mode setting.'
          examples:
          - KEEP_UNCHANGED
        terminalWidth:
          type: integer
          format: int32
          minimum: 80
          maximum: 500
          description: 'Width of pseudo-terminal in characters. A high value can prevent long lines from wrapping. Defaults to 500.

            Relevant for devices collected via SSH or Telnet.'
          examples:
          - 500
        largeRtt:
          type: boolean
          description: Whether the device has a large round-trip time (requires a longer response timeout).
          examples:
          - false
        minBytesReadPerSec:
          type: integer
          format: int64
          description: 'The minimum read rate in bytes/sec required to prevent collection from failing with a

            `SLOW_READ_RATE_DETECTED` error. Defaults to 500.'
          examples:
          - false
        maxConnectionsPerMin:
          type: integer
          format: int32
          description: 'The maximum number of connections to this device that should be attempted per minute. Setting this property

            can prevent spurious connectivity test failures if the device’s SSH server is configured with a connection

            rate limit.'
          examples:
          - 10
        useFileTransferForLargeOutput:
          type: boolean
          description: 'Whether to use file transfer instead of printing large command output directly to the shell. This is

            currently only supported for Juniper devices when executing routing table commands. The primary purpose is

            to avoid printing large outputs directly to the shell, which on Juniper devices can interfere with packet

            forwarding performance. Instead, the command output is written to a temporary file on the device and then

            transferred over a separate connection. After the transfer is complete, the temporary file is deleted to

            prevent unnecessary disk usage on the device.'
          examples:
          - false
        bmpStationHost:
          type: string
          description: 'IP address or hostname of the BMP station from which BMP collection should be peformed for this device. If

            set, a jump server won’t be used for BMP collection.'
          examples:
          - 10.121.7.33
        bgpAndBmpFailureHandling:
          type: string
          description: How to handle BGP or BMP collection failure. Defaults to `FAIL_DEVICE`.
          examples:
          - SWITCH_TO_CLI
          enum:
          - FAIL_DEVICE
          - SWITCH_TO_CLI
          - ALWAYS_USE_CLI
          - ALWAYS_USE_BMP
          - CONTINUE_WITHOUT_BGP_DATA
        collectBgpAdvertisements:
          type: boolean
          description: 'Whether BGP advertisements should be collected. Defaults to `false` unless advertisement collection is

            required to model a [synthetic device](https://docs.fwd.app/latest/api/synthetic-devices/) connected to this

            device.'
          examples:
          - false
        bgpTableType:
          type: string
          description: 'The BGP route types to collect. Honored only if `collectedBgpAdvertisements` is true. Defaults

            to `BOTH`.'
          examples:
          - BOTH
          enum:
          - BOTH
          - ADJ_RIB_IN
          - ADJ_RIB_OUT
        bgpPeerType:
          type: string
          description: 'The BGP peer types from which to collect routes. Honored only if `collectedBgpAdvertisements` is true.

            Defaults to `BOTH`.'
          examples:
          - BOTH
          enum:
          - BOTH
          - EBGP
          - IBGP
        bgpSubnetsToCollect:
          type: array
          items:
            type: string
          description: 'Restricts collection of BGP advertisements to specific subnets if the device supports it. Honored only if

            `collectBgpAdvertisements` is `true`.'
          examples:
          - - 123.223.47.0/24
        prompt:
          type: string
          description: 'A case-insensitive glob pattern used to identify an interactive prompt. When this pattern matches the end of

            the prompt, ignoring any trailing whitespace, the Collector will enter the configured `promptResponse`.

            Relevant for devices collected via SSH or Telnet.'
          examples:
          - y/n
        promptResponse:
          type: string
          description: 'What the Collector should enter in response to a device prompt matching `prompt` in order to proceed.

            Relevant for devices collected via SSH or Telnet. Required if `prompt` is set.'
          examples:
          - y
        collect:
          type: boolean
          description: Whether to collect from the device. Defaults to true.
          examples:
          - false
        note:
          type: string
          description: An optional description or note about the device.
        enableSnmpCollection:
          type: boolean
          description: Whether to collect performance data (counters) via SNMP. Defaults to false.
          examples:
          - false
        highCpuUsage:
          type: number
          format: float
          minimum: 0.75
          maximum: 1
          description: Threshold at or above which CPU usage is considered high. Defaults to 0.8 (80.0%).
          examples:
          - 0.85
        highMemoryUsage:
          type: number
          format: float
          minimum: 0.75
          maximum: 1
          description: Threshold at or above which memory usage is considered high. Defaults to 0.9 (90.0%).
          examples:
          - 0.92
        highInputUtilization:
          type: number
          format: float
          minimum: 0.75
          maximum: 1
          description: 'Threshold at or above which input interface utilization is considered high. Defaults to 0.9

            (90.0%).'
          examples:
          - 0.8
        highOutputUtilization:
          type: number
          format: float
          minimum: 0.75
          maximum: 1
          description: 'Threshold at or above which output interface utilization is considered high. Defaults to 0.9

            (90.0%).'
          examples:
          - 0.88
        mediumCpuUsage:
          type: number
          format: float
          minimum: 0.5
          maximum: 1
          description: Threshold at or above which CPU usage is considered medium high. Has no default value.
          examples:
          - 0.7
        mediumMemoryUsage:
          type: number
          format: float
          minimum: 0.5
          maximum: 1
          description: Threshold at or above which memory usage is considered medium high. Has no default value.
          examples:
          - 0.71
        mediumInputUtilization:
          type: number
          format: float
          minimum: 0.5
          maximum: 1
          description: 'Threshold at or above which input interface utilization is considered medium high. Has no

            default value.'
          examples:
          - 0.72
        mediumOutputUtilization:
          type: number
          format: float
          minimum: 0.5
          maximum: 1
          description: 'Threshold at or above which output interface utilization is considered medium high. Has no

            default value.'
          examples:
          - 0.73
        cloudLocationId:
          type: string
          description: 'ID of the cloud location at which this device was discovered. Present for cloud-based virtualized devices

            only.'
          examples:
          - AWS.us-east-1
        cloudSetupId:
          type: string
          description: 'Name of the cloud setup associated with this device’s discovery. Present for cloud-based virtualized devices

            only.'
          examples:
          - my-aws-setup
        cloudDiscoverySource:
          type: string
          description: 'Account name (AWS), Project ID (GCP), or Subscription ID (Azure) associated with this device’s discovery.

            Present for cloud-based virtualized devices only.'
          examples:
          - main
    ClassicDevices:
      type: object
      properties:
        devices:
          type: array
          items:
            $ref: '#/components/schemas/ClassicDevice'
    ClassicDevice:
      allOf:
      - type: object
        required:
        - name
        - host
        properties:
          name:
            type: string
            description: 'A name that’s unique (ignoring case) among all of the network’s collection source names. May consist of

              letters, digits, dots, hyphens, and underscores.'
            examples:
            - my-router
          type:
            $ref: '#/components/schemas/ClassicDeviceType'
            description: Auto-detected during connectivity testing if unspecified.
            examples:
            - checkpoint_ssh
          host:
            type: string
            description: IP address or hostname used to connect to the device.
            examples:
            - 10.121.7.13
          port:
            type: integer
            format: int32
            minimum: 1
            maximum: 65535
            description: 'Port used to connect to the device. The default value depends on the collection protocol: 22 for SSH, 443

              for HTTPS, etc.'
            examples:
            - 22
          cliCredentialId:
            type: string
            description: 'The `id` of a CliCredential of type `LOGIN`. Relevant for devices collected via SSH or Telnet. Credential

              auto-association will be attempted using credentials configured to allow it if this property is unspecified

              and collecting from this device requires this kind of credential.'
            examples:
            - L-3
          cliCredential2Id:
            type: string
            description: 'The `id` of a CliCredential of type `PRIVILEGED_MODE` (for Cisco-like or Checkpoint devices) or `SHELL` (for

              Avi controllers). On Checkpoint, this credential is used for TACACS privilege escalation. Credential

              auto-association will be attempted using credentials configured to allow it if this property is unspecified

              and collecting from this device requires this kind of credential.'
            examples:
            - PM-2
          cliCredential3Id:
            type: string
            description: 'The `id` of a CliCredential of type `EXPERT_MODE` (for Checkpoint devices). Can be set with or without a

              `PRIVILEGED_MODE` credential for `cliCredential2Id`. Credential auto-association will be attempted using

              credentials configured to allow it if this property is unspecified and collecting from this device requires

              this kind of credential.'
            examples:
            - EM-6
          httpCredentialId:
            type: string
            description: 'The `id` of an HttpCredential of type `LOGIN` or `API_KEY`. Relevant for devices collected via HTTPS or

              HTTP. Credential auto-association will be attempted using credentials configured to allow it if this

              property is unspecified and collecting from this device requires this kind of credential.'
            examples:
            - H-5
          snmpCredentialId:
            type: string
            description: 'The `id` of an SnmpCredential. Used to collect performance data (counters) if `enableSnmpCollection` is

              true. Credential auto-association will be attempted using credentials configured to allow it if this

              property is unspecified and collecting from this device requires this kind of credential.'
            examples:
            - S-4
          jumpServerId:
            type: string
            description: The `id` of the JumpServer that should be used to collect from this device.
            examples:
            - J-0
          disableIpv6Collection:
            type: boolean
            description: Disables collection of any IPv6 forwarding state on the device. Defaults to false.
            examples:
            - false
          fullCollectionLog:
            type: boolean
            description: Enables more detailed logging during collection. Defaults to false.
            examples:
            - false
          paginationMode:
            $ref: '#/components/schemas/PaginationMode'
            description: 'The pagination mode to use during collection. Relevant for devices collected via SSH or Telnet. Defaults to

              `DISABLE_PAGINATION`. Per-command pagination (such as appending `| more`) may be used if set to

              `ENABLE_PAGINATION` for a device that doesn’t have a per-session pagination mode setting.'
            examples:
            - KEEP_UNCHANGED
          terminalWidth:
            type: integer
            format: int32
            minimum: 80
            maximum: 500
            description: 'Width of pseudo-terminal in characters. A high value can prevent long lines from wrapping. Defaults to 500.

              Relevant for devices collected via SSH or Telnet.'
            examples:
            - 500
          largeRtt:
            type: boolean
            description: Whether the device has a large round-trip time (requires a longer response timeout).
            examples:
            - false
          minBytesReadPerSec:
            type: integer
            format: int64
            description: 'The minimum read rate in bytes/sec required to prevent collection from failing with a

              `SLOW_READ_RATE_DETECTED` error. Defaults to 500.'
            examples:
            - false
          maxConnectionsPerMin:
            type: integer
            format: int32
            description: 'The maximum number of connections to this device that should be attempted per minute. Setting this property

              can prevent spurious connectivity test failures if the device’s SSH server is configured with a connection

              rate limit.'
            examples:
            - 10
          useFileTransferForLargeOutput:
            type: boolean
            description: 'Whether to use file transfer instead of printing large command output directly to the shell. This is

              currently only supported for Juniper devices when executing routing table commands. The primary purpose is

              to avoid printing large outputs directly to the shell, which on Juniper devices can interfere with packet

              forwarding performance. Instead, the command output is written to a temporary file on the device and then

              transferred over a separate connection. After the transfer is complete, the temporary file is deleted to

              prevent unnecessary disk usage on the device.'
            examples:
            - false
          bmpStationHost:
            type: string
            description: 'IP address or hostname of the BMP station from which BMP collection should be peformed for this device. If

              set, a jump server won’t be used for BMP collection.'
            examples:
            - 10.121.7.33
          bgpAndBmpFailureHandling:
            type: string
            description: How to handle BGP or BMP collection failure. Defaults to `FAIL_DEVICE`.
            examples:
            - SWITCH_TO_CLI
            enum:
            - FAIL_DEVICE
            - SWITCH_TO_CLI
            - ALWAYS_USE_CLI
            - ALWAYS_USE_BMP
            - CONTINUE_WITHOUT_BGP_DATA
          collectBgpAdvertisements:
            type: boolean
            description: 'Whether BGP advertisements should be collected. Defaults to `false` unless advertisement collection is

              required to model a [synthetic device](https://docs.fwd.app/latest/api/synthetic-devices/) connected to this

              device.'
            examples:
            - false
          bgpTableType:
            type: string
            description: 'The BGP route types to collect. Honored only if `collectedBgpAdvertisements` is true. Defaults

              to `BOTH`.'
            examples:
            - BOTH
            enum:
            - BOTH
            - ADJ_RIB_IN
            - ADJ_RIB_OUT
          bgpPeerType:
            type: string
            description: 'The BGP peer types from which to collect routes. Honored only if `collectedBgpAdvertisements` is true.

              Defaults to `BOTH`.'
            examples:
            - BOTH
            enum:
            - BOTH
            - EBGP
            - IBGP
          bgpSubnetsToCollect:
            type: array
            items:
              type: string
            description: 'Restricts collection of BGP advertisements to specific subnets if the device supports it. Honored only if

              `collectBgpAdvertisements` is `true`.'
            examples:
            - - 123.223.47.0/24
          prompt:
            type: string
            description: 'A case-insensitive glob pattern used to identify an interactive prompt. When this pattern matches the end of

              the prompt, ignoring any trailing whitespace, the Collector will enter the configured `promptResponse`.

              Relevant for devices collected via SSH or Telnet.'
            examples:
            - y/n
          promptResponse:
            type: string
            description: 'What the Collector should enter in response to a device prompt matching `prompt` in order to proceed.

              Relevant for devices collected via SSH or Telnet. Required if `prompt` is set.'
            examples:
            - y
          collect:
            type: boolean
            description: Whether to collect from the device. Defaults to true.
            examples:
            - false
          note:
            type: string
            description: An optional description or note about the device.
          enableSnmpCollection:
            type: boolean
            description: Whether to collect performance data (counters) via SNMP. Defaults to false.
            examples:
            - false
          highCpuUsage:
            type: number
            format: float
            minimum: 0.75
            maximum: 1
            description: Threshold at or above which CPU usage is considered high. Defaults to 0.8 (80.0%).
            examples:
            - 0.85
          highMemoryUsage:
            type: number
            format: float
            minimum: 0.75
            maximum: 1
            description: Threshold at or above which memory usage is considered high. Defaults to 0.9 (90.0%).
            examples:
            - 0.92
          highInputUtilization:
            type: number
            format: float
            minimum: 0.75
            maximum: 1
            description: 'Threshold at or above which input interface utilization is considered high. Defaults to 0.9

              (90.0%).'
            examples:
            - 0.8
          highOutputUtilization:
    

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/forward-networks/refs/heads/main/openapi/forward-networks-classic-devices-api-openapi.yml