Forward Networks Network Topology API

List the links inferred between network devices and override them if necessary

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-network-topology-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-network-topology-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 'Forward Networks: Complete Aliases Network Topology 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: Network Topology
  description: List the links inferred between network devices and override them if necessary
  summary: Network Topology
paths:
  /snapshots/{snapshotId}/topology:
    get:
      tags:
      - Network Topology
      summary: Get the network topology
      description: The links in the response are directed, so they generally appear twice—once for each direction.
      operationId: getTopology
      parameters:
      - name: snapshotId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TopologyLink'
        '409':
          description: 'The system is currently processing this Snapshot.


            Note: GET /networks/{networkId}/snapshots/latestProcessed can be used to determine when processing of the

            latest Snapshot is done or to identify an alternate Snapshot that has already been processed.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
      security:
      - api_token: []
  /snapshots/{snapshotId}/topology/overrides:
    get:
      tags:
      - Network Topology
      summary: Get the topology overrides
      operationId: getLinkOverrides
      parameters:
      - name: snapshotId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LinkOverrides'
        '409':
          description: 'The system is currently processing this Snapshot.


            Note: GET /networks/{networkId}/snapshots/latestProcessed can be used to determine when processing of the

            latest Snapshot is done or to identify an alternate Snapshot that has already been processed.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
      security:
      - api_token: []
    post:
      tags:
      - Network Topology
      summary: Edit the topology overrides
      operationId: editLinkOverrides
      parameters:
      - name: snapshotId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkOverridesEdit'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
        '409':
          description: 'The system is currently processing this Snapshot.


            Note: GET /networks/{networkId}/snapshots/latestProcessed can be used to determine when processing of the

            latest Snapshot is done or to identify an alternate Snapshot that has already been processed.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
      security:
      - api_token: []
    put:
      tags:
      - Network Topology
      summary: Set the topology overrides
      description: Replaces any topology overrides previously saved for the Snapshot.
      operationId: replaceLinkOverrides
      parameters:
      - name: snapshotId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkOverrides'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
        '409':
          description: 'The system is currently processing this Snapshot.


            Note: GET /networks/{networkId}/snapshots/latestProcessed can be used to determine when processing of the

            latest Snapshot is done or to identify an alternate Snapshot that has already been processed.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
      security:
      - api_token: []
components:
  schemas:
    LinkOverrides:
      type: object
      properties:
        absent:
          type: array
          items:
            $ref: '#/components/schemas/Link'
        present:
          type: array
          items:
            $ref: '#/components/schemas/Link'
    LinkOverridesEdit:
      type: object
      properties:
        absentAdditions:
          type: array
          items:
            $ref: '#/components/schemas/Link'
        absentRemovals:
          type: array
          items:
            $ref: '#/components/schemas/Link'
        presentAdditions:
          type: array
          items:
            $ref: '#/components/schemas/Link'
        presentRemovals:
          type: array
          items:
            $ref: '#/components/schemas/Link'
    Link:
      type: object
      properties:
        port1:
          type: string
        port2:
          type: string
    ErrorInfo:
      type: object
      required:
      - httpMethod
      - apiUrl
      - message
      properties:
        httpMethod:
          type: string
          examples:
          - GET
          enum:
          - GET
          - HEAD
          - POST
          - PUT
          - PATCH
          - DELETE
        apiUrl:
          type: string
          examples:
          - /api/version
        message:
          type: string
          description: A description of the error
        reason:
          type: string
    TopologyLink:
      type: object
      properties:
        sourcePort:
          type: string
        targetPort:
          type: string
  securitySchemes:
    api_token:
      type: http
      scheme: basic