{
  "id": "@itentialopensource/adapter-forwardnetworks",
  "type": "Adapter",
  "export": "ForwardNetworks",
  "title": "ForwardNetworks",
  "src": "adapter.js",
  "roles": [
    "admin"
  ],
  "methods": [
    {
      "name": "iapUpdateAdapterConfiguration",
      "summary": "Updates the adapter configuration",
      "description": "Updates the adapter configuration file with the provided changes",
      "input": [
        {
          "name": "configFile",
          "type": "string",
          "info": "The name of the file to change",
          "required": true,
          "schema": {
            "title": "configFile",
            "type": "string"
          }
        },
        {
          "name": "changes",
          "type": "object",
          "info": "JSON object containing the configuration changes",
          "required": true,
          "schema": {
            "title": "changes",
            "type": "object"
          }
        },
        {
          "name": "entity",
          "type": "string",
          "info": "The entity in which the changes are being made",
          "required": false,
          "schema": {
            "title": "entity",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "string",
          "info": "The type of file to change - action, schema, or mock",
          "required": false,
          "schema": {
            "title": "type",
            "type": "string"
          }
        },
        {
          "name": "action",
          "type": "string",
          "info": "The action to be changed",
          "required": false,
          "schema": {
            "title": "action",
            "type": "string"
          }
        },
        {
          "name": "replace",
          "type": "boolean",
          "info": "True to replace entire mock data, false to merge/append",
          "required": false,
          "schema": {
            "title": "replace",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUpdateAdapterConfiguration"
      },
      "task": true
    },
    {
      "name": "iapSuspendAdapter",
      "summary": "Suspends the adapter",
      "description": "Suspends the adapter",
      "input": [
        {
          "name": "mode",
          "type": "enum",
          "enumerals": [
            "pause",
            "error"
          ],
          "info": "How incoming requests are handled. Defaults to 'pause'",
          "description": "How incoming requests are handled. Defaults to 'pause'",
          "schema": {
            "title": "mode",
            "type": "string"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapSuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapUnsuspendAdapter",
      "summary": "Unsuspends the adapter",
      "description": "Unsuspends the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUnsuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterQueue",
      "summary": "Return the requests that are waiting in the queue if throttling is enabled",
      "description": "Return the requests that are waiting in the queue if throttling is enabled",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter queue",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetAdapterQueue"
      },
      "task": true
    },
    {
      "name": "iapFindAdapterPath",
      "summary": "Provides the ability to see if a particular API path is supported by the adapter",
      "description": "Provides the ability to see if a particular API path is supported by the adapter",
      "input": [
        {
          "name": "apiPath",
          "type": "string",
          "info": "The API Path you want to check - make sure to not include base path and version",
          "description": "The API Path you want to check - make sure to not include base path and version",
          "schema": {
            "title": "apiPath",
            "type": "string"
          },
          "required": true
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapFindAdapterPath"
      },
      "task": true
    },
    {
      "name": "iapTroubleshootAdapter",
      "summary": "Runs troubleshoot script for adapter",
      "description": "Runs troubleshoot script for adapter",
      "input": [
        {
          "name": "props",
          "type": "object",
          "info": "Object containing configuration, healthcheck and auth properties {'connProps':{'host': 'api.service.com', 'base_path': '/', 'protocol': 'http', 'port': 443, 'version': 'v1'},'healthCheckEndpoint': '/healthcheck', 'auth': {'auth_method': 'no authentication', 'username': 'username', 'password': 'password'}}",
          "required": true,
          "schema": {
            "title": "props",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapTroubleshootAdapter"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterHealthcheck",
      "summary": "Runs healthcheck script for adapter",
      "description": "Runs healthcheck script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "Whether healthcheck passed or failed",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterHealthcheck"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterConnectivity",
      "summary": "Runs connectivity check script for adapter",
      "description": "Runs connectivity check script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterConnectivity"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterBasicGet",
      "summary": "Runs basicGet script for adapter",
      "description": "Runs basicGet script for adapter",
      "input": [
        {
          "name": "maxCalls",
          "required": false,
          "type": "number",
          "info": "How many GET endpoints to test (defaults to 5)",
          "schema": {
            "title": "maxCalls",
            "type": "number",
            "default": 5
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterBasicGet"
      },
      "task": true
    },
    {
      "name": "iapMoveAdapterEntitiesToDB",
      "summary": "Moves entities from an adapter into the Itential Platform database",
      "description": "Moves entities from an adapter into the Itential Platform database",
      "input": [],
      "output": {
        "name": "res",
        "type": "object",
        "description": "A JSON Object containing status, code and the response from the mongo transaction",
        "schema": {
          "title": "res",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapMoveAdapterEntitiesToDB"
      },
      "task": true
    },
    {
      "name": "iapDeactivateTasks",
      "summary": "Deactivate the inputted tasks",
      "description": "Deactivate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to deactivate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapDeactivateTasks"
      },
      "task": true
    },
    {
      "name": "iapActivateTasks",
      "summary": "Activate the inputted tasks",
      "description": "activate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to activate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapActivateTasks"
      },
      "task": true
    },
    {
      "name": "iapPopulateEntityCache",
      "summary": "Populate the cache for the given entities",
      "description": "Populate the cache for the given entities",
      "input": [
        {
          "name": "entityTypes",
          "type": "array",
          "info": "the entity type(s) to populate",
          "required": true,
          "schema": {
            "title": "entityTypes",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapPopulateEntityCache"
      },
      "task": true
    },
    {
      "name": "iapRetrieveEntitiesCache",
      "summary": "Retrieves data from cache for specified entity type",
      "description": "Retrieves data from cache for specified entity type",
      "input": [
        {
          "name": "entityType",
          "type": "string",
          "info": "entity of which to retrieve",
          "required": true,
          "schema": {
            "title": "entityType",
            "type": "string"
          }
        },
        {
          "name": "options",
          "type": "object",
          "info": "settings of which data to return and how to return it",
          "required": false,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRetrieveEntitiesCache"
      },
      "task": true
    },
    {
      "name": "getDevice",
      "summary": "Get the Appliance",
      "description": "Get the Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevice"
      },
      "task": false
    },
    {
      "name": "getDevicesFiltered",
      "summary": "Get Appliances that match the filter",
      "description": "Get Appliances that match the filter",
      "input": [
        {
          "name": "options",
          "type": "object",
          "info": "options - e.g. { 'start': 1, 'limit': 20, 'filter': { 'name': 'abc123' } }",
          "required": true,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "array",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "array"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesFiltered"
      },
      "task": false
    },
    {
      "name": "isAlive",
      "summary": "Checks the status for the provided Appliance",
      "description": "Checks the status for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/isAlive"
      },
      "task": false
    },
    {
      "name": "getConfig",
      "summary": "Gets a config for the provided Appliance",
      "description": "Gets a config for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "format",
          "type": "string",
          "info": "The format to be returned - this is ignored as we always return json",
          "required": false,
          "schema": {
            "title": "format",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getConfig"
      },
      "task": false
    },
    {
      "name": "iapGetDeviceCount",
      "summary": "Gets a device count from the system",
      "description": "Gets a device count from the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetDeviceCount"
      },
      "task": false
    },
    {
      "name": "iapExpandedGenericAdapterRequest",
      "summary": "Makes the requested generic call with additional options",
      "description": "Makes the requested generic call with additional options via metadata",
      "input": [
        {
          "name": "metadata",
          "type": "object",
          "info": "metadata for the call (optional)",
          "description": "metadata for the call - allows for many enhancements (optional)",
          "schema": {
            "title": "metadata",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "pathVars",
          "type": "object",
          "info": "the parameters to be put within the url path (optional)",
          "description": "the parameters to be put within the url path (optional)",
          "schema": {
            "title": "pathVars",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapExpandedGenericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequest",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequestNoBasePath",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequestNoBasePath"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterLint",
      "summary": "Run the adapter lint script to return the results",
      "description": "Run the adapter lint script to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "string",
        "description": "A string containing the run results",
        "schema": {
          "title": "result",
          "type": "string"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterLint"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterTests",
      "summary": "Run the adapter test scripts (baseunit and unit) to return the results",
      "description": "Run the adapter test scripts (baseunit and unit) to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterTests"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterInventory",
      "summary": "Provide inventory information abbout the adapter",
      "description": "Provide inventory information abbout the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapGetAdapterInventory"
      },
      "task": true
    },
    {
      "name": "getNetworksUsingGET",
      "summary": "Lists all networks",
      "description": "Lists all networks",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creatorId": {
                "type": "string"
              },
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "orgId": {
                "type": "string"
              }
            },
            "title": "Network"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getNetworksUsingGET"
      },
      "task": true
    },
    {
      "name": "createNetworkUsingPOST",
      "summary": "Creates a network",
      "description": "Creates a network",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "name: string",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creatorId": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "orgId": {
              "type": "string"
            }
          },
          "title": "Network"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createNetworkUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteNetworkUsingDELETE",
      "summary": "Deletes a network",
      "description": "Deletes a network",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creatorId": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "orgId": {
              "type": "string"
            }
          },
          "title": "Network"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteNetworkUsingDELETE"
      },
      "task": true
    },
    {
      "name": "updateNetworkUsingPATCH",
      "summary": "Renames a network",
      "description": "Renames a network",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "update",
          "type": "object",
          "info": "update: {\"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              }
            },
            "title": "NetworkUpdate"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creatorId": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "orgId": {
              "type": "string"
            }
          },
          "title": "Network"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateNetworkUsingPATCH"
      },
      "task": true
    },
    {
      "name": "cancelCollectUsingPOST",
      "summary": "Cancels an in-progress network collection",
      "description": "Cancels an in-progress network collection",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "force: boolean",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/cancelCollectUsingPOST"
      },
      "task": true
    },
    {
      "name": "getCollectorStateUsingGET",
      "summary": "Gets the status of a network’s collector",
      "description": "Gets the status of a network’s collector",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "busyStatus": {
              "type": "string"
            },
            "hasDevicesConfigured": {
              "type": "boolean"
            },
            "isIdle": {
              "type": "boolean"
            },
            "isOnline": {
              "type": "boolean"
            },
            "isSet": {
              "type": "boolean"
            }
          },
          "title": "CollectorState"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectorStateUsingGET"
      },
      "task": true
    },
    {
      "name": "collectUsingPOST",
      "summary": "Triggers a network collection",
      "description": "Triggers a network collection",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "Optional body that limits collection to a subset of the network’s devices.\n\nSpecify either `deviceGroup` or `devices`, not both.: {\"deviceGroup\": \"string\", \"devices\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "deviceGroup": {
                "type": "string",
                "example": "ATL_devices",
                "description": "The name of a [devices Alias](#aliases). If specified, omit `devices`."
              },
              "devices": {
                "type": "array",
                "example": [
                  "atl-r*-??",
                  "sjc-r*-??"
                ],
                "description": "Device names or name globs. If specified, omit `deviceGroup`.",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "PartialCollectionRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/collectUsingPOST"
      },
      "task": true
    },
    {
      "name": "getDeviceCredentialsUsingGET",
      "summary": "Lists a network’s device credentials",
      "description": "Omits the sensitive properties `password` and `content`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "name",
              "password",
              "type"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
                "description": "auto-generated if not provided"
              },
              "type": {
                "type": "string",
                "example": "LOGIN"
              },
              "name": {
                "type": "string",
                "example": "admin (sjc)",
                "description": "for display purposes in the application"
              },
              "username": {
                "type": "string",
                "example": "admin",
                "description": "required for `LOGIN` and `SHELL` types"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "content": {
                "type": "string",
                "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
              }
            },
            "title": "DeviceCredential"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceCredentialsUsingGET"
      },
      "task": true
    },
    {
      "name": "createDeviceCredentialUsingPOST",
      "summary": "Creates or replaces a network device credential",
      "description": "Creates or replaces a network device credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceCredential",
          "type": "object",
          "info": "deviceCredential: {\"id\": \"string\", \"type\": \"Must be one of [LOGIN, PRIVILEGED_MODE, SHELL, KEY_STORE]\", \"name\": \"string\", \"username\": \"string\", \"password\": \"string\", \"content\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "name",
              "password",
              "type"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
                "description": "auto-generated if not provided"
              },
              "type": {
                "type": "string",
                "example": "LOGIN",
                "enum": [
                  "LOGIN",
                  "PRIVILEGED_MODE",
                  "SHELL",
                  "KEY_STORE"
                ]
              },
              "name": {
                "type": "string",
                "example": "admin (sjc)",
                "description": "for display purposes in the application"
              },
              "username": {
                "type": "string",
                "example": "admin",
                "description": "required for `LOGIN` and `SHELL` types"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "content": {
                "type": "string",
                "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
              }
            },
            "title": "DeviceCredential"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "name",
            "password",
            "type"
          ],
          "properties": {
            "id": {
              "type": "string",
              "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
              "description": "auto-generated if not provided"
            },
            "type": {
              "type": "string",
              "example": "LOGIN"
            },
            "name": {
              "type": "string",
              "example": "admin (sjc)",
              "description": "for display purposes in the application"
            },
            "username": {
              "type": "string",
              "example": "admin",
              "description": "required for `LOGIN` and `SHELL` types"
            },
            "password": {
              "type": "string",
              "example": "my-s3cr3t-p4s$w0rd"
            },
            "content": {
              "type": "string",
              "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
              "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
            }
          },
          "title": "DeviceCredential"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createDeviceCredentialUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteDeviceCredentialUsingDELETE",
      "summary": "Deletes a network device credential",
      "description": "Deletes a network device credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceCredentialUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchDeviceCredentialUsingPATCH",
      "summary": "Updates a network device credential",
      "description": "Updates a network device credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "update",
          "type": "object",
          "info": "update: {\"type\": \"Must be one of [LOGIN, PRIVILEGED_MODE, SHELL, KEY_STORE]\", \"name\": \"string\", \"username\": \"string\", \"password\": \"string\", \"content\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "type"
            ],
            "properties": {
              "type": {
                "type": "string",
                "example": "LOGIN",
                "enum": [
                  "LOGIN",
                  "PRIVILEGED_MODE",
                  "SHELL",
                  "KEY_STORE"
                ]
              },
              "name": {
                "type": "string",
                "example": "admin (sjc)",
                "description": "for display purposes in the application"
              },
              "username": {
                "type": "string",
                "example": "admin",
                "description": "for `LOGIN` and `SHELL` types"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "content": {
                "type": "string",
                "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
              }
            },
            "title": "DeviceCredentialUpdate"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchDeviceCredentialUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getDeviceSourcesUsingGET",
      "summary": "Gets a network’s device sources",
      "description": "Gets a network’s device sources",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "host",
              "name",
              "type"
            ],
            "properties": {
              "collectBgpAdvertisements": {
                "type": "boolean",
                "example": false
              },
              "disableCollection": {
                "type": "boolean",
                "example": false
              },
              "fullCollectionLog": {
                "type": "boolean",
                "example": false
              },
              "host": {
                "type": "string",
                "example": "10.121.7.13"
              },
              "jumpServerId": {
                "type": "string",
                "example": "my-sjc-jump-server"
              },
              "keyStoreId": {
                "type": "string",
                "example": "my-tls-key-store"
              },
              "largeRtt": {
                "type": "boolean",
                "example": false
              },
              "loginCredentialId": {
                "type": "string",
                "example": "my-checkpoint-credentials"
              },
              "name": {
                "type": "string",
                "example": "my_router"
              },
              "paginationMode": {
                "type": "string",
                "example": "DISABLE_PAGINATION"
              },
              "port": {
                "type": "number",
                "example": 22
              },
              "privilegedModePasswordId": {
                "type": "string",
                "example": "privileged_mode_password_3"
              },
              "shellCredentialId": {
                "type": "string",
                "example": "my_avi_shell_cred"
              },
              "type": {
                "type": "string",
                "example": "checkpoint_ssh"
              },
              "openFlow": {
                "type": "object",
                "properties": {
                  "port": {
                    "type": "number",
                    "example": 6653
                  }
                },
                "title": "OpenFlowConfig"
              }
            },
            "title": "DeviceSource"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceSourcesUsingGET"
      },
      "task": true
    },
    {
      "name": "addOrUpdateDeviceSourcesUsingPOST",
      "summary": "Creates or updates network device sources",
      "description": "Creates or updates network device sources",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSources",
          "type": "array",
          "info": "deviceSources: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "host",
                "name",
                "type"
              ],
              "properties": {
                "collectBgpAdvertisements": {
                  "type": "boolean",
                  "example": false
                },
                "disableCollection": {
                  "type": "boolean",
                  "example": false
                },
                "fullCollectionLog": {
                  "type": "boolean",
                  "example": false
                },
                "host": {
                  "type": "string",
                  "example": "10.121.7.13"
                },
                "jumpServerId": {
                  "type": "string",
                  "example": "my-sjc-jump-server"
                },
                "keyStoreId": {
                  "type": "string",
                  "example": "my-tls-key-store"
                },
                "largeRtt": {
                  "type": "boolean",
                  "example": false
                },
                "loginCredentialId": {
                  "type": "string",
                  "example": "my-checkpoint-credentials"
                },
                "name": {
                  "type": "string",
                  "example": "my_router"
                },
                "paginationMode": {
                  "type": "string",
                  "example": "DISABLE_PAGINATION",
                  "enum": [
                    "KEEP_UNCHANGED",
                    "DISABLE_PAGINATION",
                    "ENABLE_PAGINATION"
                  ]
                },
                "port": {
                  "type": "number",
                  "example": 22
                },
                "privilegedModePasswordId": {
                  "type": "string",
                  "example": "privileged_mode_password_3"
                },
                "shellCredentialId": {
                  "type": "string",
                  "example": "my_avi_shell_cred"
                },
                "type": {
                  "type": "string",
                  "example": "checkpoint_ssh",
                  "enum": [
                    "aruba_controller_ssh",
                    "128t_conductor_full",
                    "128t_conductor",
                    "128t_router",
                    "a10_acos_ssh",
                    "arista_eos_ssh",
                    "avi_controller_ssh",
                    "avi_controller_ssh_cli_user",
                    "avi_se",
                    "avi_controller_ssh_via_host",
                    "bluecoat_ssh",
                    "cisco_ios_ssh",
                    "cisco_ios_telnet",
                    "cisco_ios_xe_ssh",
                    "cisco_ios_xe_telnet",
                    "cisco_ios_xr_ssh",
                    "cisco_nxos_ssh",
                    "cisco_asa_ssh",
                    "cisco_asa_admin_ssh",
                    "cisco_asa_child_ssh",
                    "cisco_ftd_ssh",
                    "cisco_fxos_api",
                    "cisco_nxos_aci_ssh",
                    "cisco_apic_ssh",
                    "cisco_apic_only_ssh",
                    "cisco_ave_ssh",
                    "juniper_junos_ssh",
                    "juniper_srx_ssh",
                    "juniper_netscreen_ssh",
                    "pica8_ovs_ofctl_ssh",
                    "linux_ovs_ofctl_ssh",
                    "openflow",
                    "openflow_ofdpa",
                    "pica8_openflow_ovs_ssh",
                    "linux_os_ssh",
                    "f5_ssh",
                    "checkpoint_ssh",
                    "checkpoint_mgmt_ssh",
                    "fortinet_ssh",
                    "hp_comware_ssh",
                    "hp_provision_ssh",
                    "panos_ssh",
                    "panorama_ssh",
                    "esxi_ssh",
                    "vcenter_api",
                    "netscaler_ssh",
                    "cumulus_ssh",
                    "riverbed_steelhead_ssh",
                    "riverbed_interceptor_ssh",
                    "aws_api",
                    "aws_host_ssh",
                    "cisco_ucs_ssh",
                    "nsx_api",
                    "azure_api",
                    "avaya_ssh",
                    "avaya_telnet",
                    "gcp_api",
                    "unknown"
                  ]
                },
                "openFlow": {
                  "type": "object",
                  "properties": {
                    "port": {
                      "type": "number",
                      "example": 6653
                    }
                  },
                  "title": "OpenFlowConfig"
                }
              },
              "title": "DeviceSource"
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addOrUpdateDeviceSourcesUsingPOST"
      },
      "task": true
    },
    {
      "name": "updateDeviceSourceUsingPUT",
      "summary": "Creates or replaces a network device source",
      "description": "Creates or replaces a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        },
        {
          "name": "deviceSource",
          "type": "object",
          "info": "deviceSource: {\"collectBgpAdvertisements\": \"boolean\", \"disableCollection\": \"boolean\", \"fullCollectionLog\": \"boolean\", \"host\": \"string\", \"jumpServerId\": \"string\", \"keyStoreId\": \"string\", \"largeRtt\": \"boolean\", \"loginCredentialId\": \"string\", \"name\": \"string\", \"paginationMode\": \"Must be one of [KEEP_UNCHANGED, DISABLE_PAGINATION, ENABLE_PAGINATION]\", \"port\": 123, \"privilegedModePasswordId\": \"string\", \"shellCredentialId\": \"string\", \"type\": \"Must be one of [aruba_controller_ssh, 128t_conductor_full, 128t_conductor, 128t_router, a10_acos_ssh, arista_eos_ssh, avi_controller_ssh, avi_se, avi_controller_ssh_via_host, bluecoat_ssh, cisco_ios_ssh, cisco_ios_telnet, cisco_ios_xe_ssh, cisco_ios_xr_ssh, cisco_nxos_ssh, cisco_asa_ssh, cisco_nxos_aci_ssh, cisco_apic_ssh, cisco_apic_only_ssh, cisco_ave_ssh, juniper_junos_ssh, juniper_srx_ssh, juniper_netscreen_ssh, pica8_ovs_ofctl_ssh, linux_ovs_ofctl_ssh, openflow, openflow_ofdpa, pica8_openflow_ovs_ssh, linux_os_ssh, f5_ssh, checkpoint_ssh, checkpoint_mgmt_ssh, fortinet_ssh, hp_comware_ssh, hp_provision_ssh, panos_ssh, panorama_ssh, circuit, esxi_ssh, vcenter_api, netscaler_ssh, cumulus_ssh, riverbed_steelhead_ssh, riverbed_interceptor_ssh, aws_api, aws_host_ssh, cisco_ucs_ssh, nsx_api, azure_api, avaya_ssh, avaya_telnet, gcp_api, unknown]\", \"openFlow\": {\"port\": 123}}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "host",
              "name",
              "type"
            ],
            "properties": {
              "collectBgpAdvertisements": {
                "type": "boolean",
                "example": false
              },
              "disableCollection": {
                "type": "boolean",
                "example": false
              },
              "fullCollectionLog": {
                "type": "boolean",
                "example": false
              },
              "host": {
                "type": "string",
                "example": "10.121.7.13"
              },
              "jumpServerId": {
                "type": "string",
                "example": "my-sjc-jump-server"
              },
              "keyStoreId": {
                "type": "string",
                "example": "my-tls-key-store"
              },
              "largeRtt": {
                "type": "boolean",
                "example": false
              },
              "loginCredentialId": {
                "type": "string",
                "example": "my-checkpoint-credentials"
              },
              "name": {
                "type": "string",
                "example": "my_router"
              },
              "paginationMode": {
                "type": "string",
                "example": "DISABLE_PAGINATION",
                "enum": [
                  "KEEP_UNCHANGED",
                  "DISABLE_PAGINATION",
                  "ENABLE_PAGINATION"
                ]
              },
              "port": {
                "type": "number",
                "example": 22
              },
              "privilegedModePasswordId": {
                "type": "string",
                "example": "privileged_mode_password_3"
              },
              "shellCredentialId": {
                "type": "string",
                "example": "my_avi_shell_cred"
              },
              "type": {
                "type": "string",
                "example": "checkpoint_ssh",
                "enum": [
                  "aruba_controller_ssh",
                  "128t_conductor_full",
                  "128t_conductor",
                  "128t_router",
                  "a10_acos_ssh",
                  "arista_eos_ssh",
                  "avi_controller_ssh",
                  "avi_controller_ssh_cli_user",
                  "avi_se",
                  "avi_controller_ssh_via_host",
                  "bluecoat_ssh",
                  "cisco_ios_ssh",
                  "cisco_ios_telnet",
                  "cisco_ios_xe_ssh",
                  "cisco_ios_xe_telnet",
                  "cisco_ios_xr_ssh",
                  "cisco_nxos_ssh",
                  "cisco_asa_ssh",
                  "cisco_asa_admin_ssh",
                  "cisco_asa_child_ssh",
                  "cisco_ftd_ssh",
                  "cisco_fxos_api",
                  "cisco_nxos_aci_ssh",
                  "cisco_apic_ssh",
                  "cisco_apic_only_ssh",
                  "cisco_ave_ssh",
                  "juniper_junos_ssh",
                  "juniper_srx_ssh",
                  "juniper_netscreen_ssh",
                  "pica8_ovs_ofctl_ssh",
                  "linux_ovs_ofctl_ssh",
                  "openflow",
                  "openflow_ofdpa",
                  "pica8_openflow_ovs_ssh",
                  "linux_os_ssh",
                  "f5_ssh",
                  "checkpoint_ssh",
                  "checkpoint_mgmt_ssh",
                  "fortinet_ssh",
                  "hp_comware_ssh",
                  "hp_provision_ssh",
                  "panos_ssh",
                  "panorama_ssh",
                  "esxi_ssh",
                  "vcenter_api",
                  "netscaler_ssh",
                  "cumulus_ssh",
                  "riverbed_steelhead_ssh",
                  "riverbed_interceptor_ssh",
                  "aws_api",
                  "aws_host_ssh",
                  "cisco_ucs_ssh",
                  "nsx_api",
                  "azure_api",
                  "avaya_ssh",
                  "avaya_telnet",
                  "gcp_api",
                  "unknown"
                ]
              },
              "openFlow": {
                "type": "object",
                "properties": {
                  "port": {
                    "type": "number",
                    "example": 6653
                  }
                },
                "title": "OpenFlowConfig"
              }
            },
            "title": "DeviceSource"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateDeviceSourceUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteDeviceSourceUsingDELETE",
      "summary": "Deletes a network device source",
      "description": "Deletes a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceSourceUsingDELETE"
      },
      "task": true
    },
    {
      "name": "deleteDeviceSourceUsingDELETEQuery",
      "summary": "Deletes a network device source",
      "description": "Deletes a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceSourceUsingDELETEQuery"
      },
      "task": true
    },
    {
      "name": "getJumpServersUsingGET",
      "summary": "Lists a network’s jump servers",
      "description": "Omits the sensitive `password` property.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "host",
              "password",
              "username"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a164",
                "description": "auto-generated if not provided"
              },
              "host": {
                "type": "string",
                "example": "10.121.7.14"
              },
              "port": {
                "type": "number",
                "example": 23,
                "description": "defaults to 22"
              },
              "username": {
                "type": "string",
                "example": "admin"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "supportsPortForwarding": {
                "type": "boolean",
                "example": false,
                "description": "defaults to true"
              }
            },
            "title": "JumpServer"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getJumpServersUsingGET"
      },
      "task": true
    },
    {
      "name": "createJumpServerUsingPOST",
      "summary": "Creates or replaces a jump server",
      "description": "Creates or replaces a jump server",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "jumpServer",
          "type": "object",
          "info": "jumpServer: {\"id\": \"string\", \"host\": \"string\", \"port\": 123, \"username\": \"string\", \"password\": \"string\", \"supportsPortForwarding\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "host",
              "password",
              "username"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a164",
                "description": "auto-generated if not provided"
              },
              "host": {
                "type": "string",
                "example": "10.121.7.14"
              },
              "port": {
                "type": "number",
                "example": 23,
                "description": "defaults to 22"
              },
              "username": {
                "type": "string",
                "example": "admin"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "supportsPortForwarding": {
                "type": "boolean",
                "example": false,
                "description": "defaults to true"
              }
            },
            "title": "JumpServer"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "host",
            "password",
            "username"
          ],
          "properties": {
            "id": {
              "type": "string",
              "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a164",
              "description": "auto-generated if not provided"
            },
            "host": {
              "type": "string",
              "example": "10.121.7.14"
            },
            "port": {
              "type": "number",
              "example": 23,
              "description": "defaults to 22"
            },
            "username": {
              "type": "string",
              "example": "admin"
            },
            "password": {
              "type": "string",
              "example": "my-s3cr3t-p4s$w0rd"
            },
            "supportsPortForwarding": {
              "type": "boolean",
              "example": false,
              "description": "defaults to true"
            }
          },
          "title": "JumpServer"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createJumpServerUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteJumpServerUsingDELETE",
      "summary": "Deletes a jump server",
      "description": "Deletes a jump server",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "jumpServerId",
          "type": "string",
          "info": "jumpServerId: string",
          "required": true,
          "schema": {
            "title": "jumpServerId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteJumpServerUsingDELETE"
      },
      "task": true
    },
    {
      "name": "editJumpServerUsingPATCH",
      "summary": "Updates a jump server",
      "description": "Updates a jump server",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "jumpServerId",
          "type": "string",
          "info": "jumpServerId: string",
          "required": true,
          "schema": {
            "title": "jumpServerId",
            "type": "string"
          }
        },
        {
          "name": "update",
          "type": "object",
          "info": "update: {\"host\": \"string\", \"port\": 123, \"username\": \"string\", \"password\": \"string\", \"supportsPortForwarding\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "host": {
                "type": "string",
                "example": "10.121.7.14"
              },
              "port": {
                "type": "number",
                "example": 23
              },
              "username": {
                "type": "string",
                "example": "admin"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "supportsPortForwarding": {
                "type": "boolean",
                "example": false
              }
            },
            "title": "JumpServerUpdate"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/editJumpServerUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getNetworkLayoutUsingGET",
      "summary": "Gets the network layout",
      "description": "Gets the network layout",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "nodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "loopbackDirection": {
                    "type": "number"
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  }
                },
                "title": "DeviceNode"
              }
            }
          },
          "title": "TopologyLayout"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNetworkLayoutUsingGET"
      },
      "task": true
    },
    {
      "name": "setNetworkLayoutUsingPOST",
      "summary": "Updates the network layout",
      "description": "Updates the network layout with any new device positions provided. Changes affect all Snapshots of the network.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "layout",
          "type": "object",
          "info": "layout: {\"nodes\": [{\"id\": \"string\", \"loopbackDirection\": 123, \"x\": 123, \"y\": 123}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "loopbackDirection": {
                      "type": "number"
                    },
                    "x": {
                      "type": "number"
                    },
                    "y": {
                      "type": "number"
                    }
                  },
                  "title": "DeviceNode"
                }
              }
            },
            "title": "TopologyLayout"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/setNetworkLayoutUsingPOST"
      },
      "task": true
    },
    {
      "name": "listNetworkSnapshotsUsingGET",
      "summary": "Lists all Snapshots",
      "description": "Lists all Snapshots",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creatorId": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "orgId": {
              "type": "string"
            },
            "snapshots": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "creationDateMillis": {
                    "type": "string",
                    "example": 1569001234567
                  },
                  "id": {
                    "type": "string"
                  },
                  "isDraft": {
                    "type": "boolean",
                    "example": false
                  },
                  "name": {
                    "type": "string",
                    "description": "Use `\"note\"` instead. Will be removed in a future release."
                  },
                  "note": {
                    "type": "string"
                  },
                  "parentSnapshotId": {
                    "type": "string"
                  },
                  "processedAtMillis": {
                    "type": "string",
                    "example": 1569003456789
                  },
                  "processingTrigger": {
                    "type": "string"
                  }
                },
                "title": "SnapshotMeta"
              }
            }
          },
          "title": "NetworkSnapshots"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/listNetworkSnapshotsUsingGET"
      },
      "task": true
    },
    {
      "name": "createSnapshotUsingPOST",
      "summary": "Imports a Snapshot",
      "description": "Imports a network Snapshot that was previously exported as a .zip file.",
      "input": [
        {
          "name": "file",
          "type": "string",
          "info": "file: string",
          "required": true,
          "schema": {
            "title": "file",
            "type": "string"
          }
        },
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "note",
          "type": "string",
          "info": "note: string",
          "required": false,
          "schema": {
            "title": "note",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string",
              "example": 1569001234567
            },
            "id": {
              "type": "string"
            },
            "isDraft": {
              "type": "boolean",
              "example": false
            },
            "name": {
              "type": "string",
              "description": "Use `\"note\"` instead. Will be removed in a future release."
            },
            "note": {
              "type": "string"
            },
            "parentSnapshotId": {
              "type": "string"
            },
            "processedAtMillis": {
              "type": "string",
              "example": 1569003456789
            },
            "processingTrigger": {
              "type": "string"
            }
          },
          "title": "SnapshotMeta"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSnapshotUsingPOST"
      },
      "task": true
    },
    {
      "name": "importSnapshotWithFilesUsingPOST",
      "summary": "Imports a Snapshot",
      "description": "Imports a network Snapshot that was previously exported as a .zip file(s).",
      "input": [
        {
          "name": "file",
          "type": "array",
          "info": "file: array of string",
          "required": true,
          "schema": {
            "title": "file",
            "type": "array"
          }
        },
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "note",
          "type": "string",
          "info": "note: string",
          "required": false,
          "schema": {
            "title": "note",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string",
              "example": 1569001234567
            },
            "id": {
              "type": "string"
            },
            "isDraft": {
              "type": "boolean",
              "example": false
            },
            "name": {
              "type": "string",
              "description": "Use `\"note\"` instead. Will be removed in a future release."
            },
            "note": {
              "type": "string"
            },
            "parentSnapshotId": {
              "type": "string"
            },
            "processedAtMillis": {
              "type": "string",
              "example": 1569003456789
            },
            "processingTrigger": {
              "type": "string"
            }
          },
          "title": "SnapshotMeta"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/importSnapshotWithFilesUsingPOST"
      },
      "task": true
    },
    {
      "name": "getLatestProcessedSnapshotUsingGET",
      "summary": "Returns the latest processed Snapshot",
      "description": "Returns the latest processed Snapshot (the most recent one that's currently prepared for [path searches](#path-search) and [new checks](#checks)).\n\nTriggers processing of the latest Snapshot if it's not already underway and the network has no processed Snapshots.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string",
              "example": 1569001234567
            },
            "id": {
              "type": "string"
            },
            "isDraft": {
              "type": "boolean",
              "example": false
            },
            "name": {
              "type": "string",
              "description": "Use `\"note\"` instead. Will be removed in a future release."
            },
            "note": {
              "type": "string"
            },
            "parentSnapshotId": {
              "type": "string"
            },
            "processedAtMillis": {
              "type": "string",
              "example": 1569003456789
            },
            "processingTrigger": {
              "type": "string"
            }
          },
          "title": "SnapshotMeta"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLatestProcessedSnapshotUsingGET"
      },
      "task": true
    },
    {
      "name": "zipSnapshotUsingGET",
      "summary": "Exports a Snapshot",
      "description": "Exports a network Snapshot as a .zip file.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/zipSnapshotUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteSnapshotUsingDELETE",
      "summary": "Deletes a Snapshot",
      "description": "Deletes a Snapshot",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSnapshotUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getSnapshotMetricsUsingGET",
      "summary": "Returns the metrics of a Snapshot",
      "description": "Returns collection and processing health metrics of a Snapshot.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "collectionConcurrency": {
              "type": "number",
              "example": 16
            },
            "collectionDuration": {
              "type": "number",
              "example": 1234
            },
            "collectionFailures": {
              "type": "object",
              "description": "Possible device error types during collection \n*UNKNOWN*: Unknown error\n*CONNECTION_TIMEOUT*: Connection to device timed out\n*CONNECTION_REFUSED*: Connection to device refused\n*AUTHENTICATION_FAILED*: Authentication failed\n*KEY_EXCHANGE_FAILED*: Key exchange failed\n*AUTHORIZATION_FAILED*: Authorization failed\n*AVI_SHELL_AUTH_FAILED*: Avi authentication failed\n*AVI_CONTROLLER_WITHOUT_HEALTHY_SERVICE_ENGINES*: No Avi Service Engines found\n*NETWORK_UNREACHABLE*: Network not reachable\n*IO_ERROR*: I/O error\n*SESSION_CLOSED*: Session closed unexpectedly\n*STATE_COLLECTION_FAILED*: State collection failed\n*JUMP_SERVER_CONNECTION_TIMEOUT*: Jump server timed out\n*JUMP_SERVER_PASSWORD_AUTH_FAILED*: Jump server auth failed\n*JUMP_SERVER_CONNECTION_FAILED*: Jump server connection refused\n*JUMP_SERVER_KEY_EXCHANGE_FAILED*: Jump server key exchange failed\n*PROXY_SERVER_PING_FAILED*: Proxy ping failed\n*PROXY_SERVER_PORT_REACHABILITY_FAILED*: Proxy port not reachable\n*PROXY_SERVER_CONNECTION_FAILED*: Proxy connection refused\n*PROXY_SERVER_AUTHENTICATION_FAILED*: Proxy authentication failed\n*PRIV_PASSWORD_ERROR*: Privileged password failed\n*UNSUPPORTED_VERSION*: Unsupported version\n*DEVICE_TYPE_UNDETECTED*: Undetected device type\n*WARN_TYPE_MISMATCH*: Device type mismatch\n*DEVICE_IS_CHILD_CONTEXT*: Parent context required\n*MANAGER_COLLECTOR_NOT_FOUND*: Collector manager error\n*INCOMPLETE_SETUP*: Incomplete setup\n*COLLECTION_NOT_FOUND*: Collection not found\n*INFINITE_LOOP_IN_COMMAND_OUTPUT*: Collection stuck in loop\n*MISSING_FILE*: File is missing\n*UNSUPPORTED_VENDOR*: Vendor not supported\n*COMMAND_DISABLED*: Required command is disabled\n*APIC_CONFIG_COLLECTION_FAILED*: APIC config collection failed\n*UNEXPECTED_KEY_EXCHANGE_MESSAGE*: Unexpected Key-Exchange message\n*UNDISCOVERED_ACI_FABRIC*: ACI fabric node was not discovered by APIC\n*SLOW_READ_RATE_DETECTED*: Read rate from the remote peer is too low\n*COLLECTION_TIMED_OUT*: Collection timed out\n*COLLECTION_CANCELED*: Collection canceled by user\n*OPERATION_TIMED_OUT*: Operation timed out\n*CERTIFICATE_CHECK_FAILED*: Certificate cannot be verified\n",
              "additionalProperties": {
                "type": "number"
              }
            },
            "creationDateMillis": {
              "type": "string",
              "example": 1234567
            },
            "hostComputationStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "Host computation status"
            },
            "ipLocationIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "IP location indexing status"
            },
            "jumpServerCollectionConcurrency": {
              "type": "number"
            },
            "l2IndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "L2 elements (vlans, LAN segments etc.) indexing status"
            },
            "needsReprocessing": {
              "type": "boolean",
              "description": "Indicates if the Snapshot needs to be reprocessed"
            },
            "numCollectionFailureDevices": {
              "type": "number"
            },
            "numParsingFailureDevices": {
              "type": "number"
            },
            "numSuccessfulDevices": {
              "type": "number",
              "example": 401
            },
            "parsingFailures": {
              "type": "object",
              "description": "Possible error types during processing \n*DEVICE_OVERUSAGE*: License limit exceeded\n*MISSING_SIGNATURE*: Missing signature\n*DUPLICATE*: Duplicate device\n*PARSER_EXCEPTION*: Couldn't be parsed\n*UNSUPPORTED_VENDOR*: Vendor not supported\n",
              "additionalProperties": {
                "type": "number"
              }
            },
            "pathSearchIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "End-to-end path indexing status"
            },
            "processingDuration": {
              "type": "number",
              "example": 5678
            },
            "searchIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "Object search indexing status"
            },
            "snapshotId": {
              "type": "string"
            }
          },
          "title": "SnapshotMetrics"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSnapshotMetricsUsingGET"
      },
      "task": true
    },
    {
      "name": "setNetworkTopoListUsingPUT",
      "summary": "Sets the topology overrides",
      "description": "Applies to the network’s latest Snapshot (if any) and to future collected Snapshots.\n\nThe **links** format is:\n```\n[\n  [\"device1\", \"port1\", \"device2\", \"port2\"],\n  [\"device3\", \"port3\", \"device4\", \"port4\"],\n  ...\n]\n```\nUsing a `PUT` or `POST` to `/snapshots/{snapshotId}/topology/overrides` is preferred.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "links",
          "type": "array",
          "info": "links: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/setNetworkTopoListUsingPUT"
      },
      "task": true
    },
    {
      "name": "getTopologyUsingGET",
      "summary": "Gets the network topology",
      "description": "The links in the response are directed, so they generally appear twice—once for each direction.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "sourcePort": {
                "type": "string"
              },
              "targetPort": {
                "type": "string"
              }
            },
            "title": "TopologyLink"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTopologyUsingGET"
      },
      "task": true
    },
    {
      "name": "getSnapshotTopoOverridesUsingGET",
      "summary": "Gets the topology overrides",
      "description": "Gets the topology overrides",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "absent": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "port1": {
                    "type": "string"
                  },
                  "port2": {
                    "type": "string"
                  }
                },
                "title": "Link"
              }
            },
            "present": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "port1": {
                    "type": "string"
                  },
                  "port2": {
                    "type": "string"
                  }
                },
                "title": "Link"
              }
            }
          },
          "title": "LinkOverrides"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSnapshotTopoOverridesUsingGET"
      },
      "task": true
    },
    {
      "name": "postSnapshotTopoOverridesUsingPOST",
      "summary": "Edits the topology overrides",
      "description": "Edits the topology overrides",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "linkOverridesEdit",
          "type": "object",
          "info": "linkOverridesEdit: {\"presentAdditions\": [{\"port1\": \"string\", \"port2\": \"string\", \"vlan\": 123}], \"presentRemovals\": [{\"port1\": \"string\", \"port2\": \"string\"}], \"absentAdditions\": [{\"port1\": \"string\", \"port2\": \"string\"}], \"absentRemovals\": [{\"port1\": \"string\", \"port2\": \"string\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "presentAdditions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    },
                    "vlan": {
                      "type": "number"
                    }
                  },
                  "title": "VlanTaggedLink"
                }
              },
              "presentRemovals": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    }
                  },
                  "title": "Link"
                }
              },
              "absentAdditions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    }
                  },
                  "title": "Link"
                }
              },
              "absentRemovals": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    }
                  },
                  "title": "Link"
                }
              }
            },
            "title": "LinkOverridesEdit"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSnapshotTopoOverridesUsingPOST"
      },
      "task": true
    },
    {
      "name": "putSnapshotTopoOverridesUsingPUT",
      "summary": "Sets the topology overrides",
      "description": "Replaces any topology overrides previously saved for the Snapshot.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "linkOverrides",
          "type": "object",
          "info": "linkOverrides: {\"absent\": [{\"port1\": \"string\", \"port2\": \"string\"}], \"present\": [{\"port1\": \"string\", \"port2\": \"string\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "absent": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    }
                  },
                  "title": "Link"
                }
              },
              "present": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "port1": {
                      "type": "string"
                    },
                    "port2": {
                      "type": "string"
                    }
                  },
                  "title": "Link"
                }
              }
            },
            "title": "LinkOverrides"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putSnapshotTopoOverridesUsingPUT"
      },
      "task": true
    },
    {
      "name": "runNqeQueryUsingPOST",
      "summary": "Runs an NQE query on a Snapshot.",
      "description": "Runs an NQE query on a Snapshot.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "The ID of Snapshot to query. Exactly one of the snapshotId and networkId parameters must be provided.: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "networkId",
          "type": "string",
          "info": "The ID of the Network to query. The query will be run on the latest Snapshot for the given Network. Exactly one of the snapshotId and networkId parameters must be provide...(description truncated): string",
          "required": false,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "runRequest",
          "type": "object",
          "info": "The following is an example query request. The query will ignore the first 20 return values, and only return 100 values in total. The rows will be sorted by the `deviceNa...(description truncated): {\"query\": \"string\", \"queryOptions\": {\"columnFilters\": [{\"columnName\": \"string\", \"value\": \"string\"}], \"limit\": 123, \"offset\": 123, \"sortBy\": {\"columnName\": \"string\", \"order\": \"Must be one of [ASC, DESC]\"}}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "query": {
                "type": "string",
                "example": "foreach device in network.devices\nforeach i in device.interfaces\nwhere i.adminStatus == AdminStatus.UP\n   && i.operStatus != OperStatus.UP\nselect {\n  deviceName: deviceName,\n  interfaceName: i.name,\n  adminStatus: i.adminStatus,\n  operStatus: i.operStatus\n}"
              },
              "queryOptions": {
                "type": "object",
                "properties": {
                  "columnFilters": {
                    "type": "array",
                    "description": "(optional) Result filters. Only records that match all filters are returned. A record matches the array of `columnFilters` if the record matches all of the `columnFilters`, in which case it is kept in the results.",
                    "items": {
                      "type": "object",
                      "required": [
                        "columnName",
                        "value"
                      ],
                      "properties": {
                        "columnName": {
                          "type": "string",
                          "example": "deviceName",
                          "description": "The name of a column to filter on."
                        },
                        "value": {
                          "type": "string",
                          "example": "ATL",
                          "description": "A string to match on."
                        }
                      },
                      "title": "ColumnFilter"
                    }
                  },
                  "limit": {
                    "type": "number",
                    "example": 100,
                    "description": "(optional) The maximum number of records to return. Defaults to 100."
                  },
                  "offset": {
                    "type": "number",
                    "example": 20,
                    "description": "(optional) The number of initial records to skip. Defaults to 0."
                  },
                  "sortBy": {
                    "type": "object",
                    "required": [
                      "columnName"
                    ],
                    "properties": {
                      "columnName": {
                        "type": "string",
                        "example": "deviceName",
                        "description": "The name of a column to sort on."
                      },
                      "order": {
                        "type": "string",
                        "description": "(optional) Either \"ASC\" or \"DESC\" to sort ascending or descending, respectively. Defaults to \"ASC\".",
                        "enum": [
                          "ASC",
                          "DESC"
                        ]
                      }
                    },
                    "title": "SortOrder"
                  }
                },
                "title": "NqeQueryOptions"
              }
            },
            "title": "NqeQueryRunRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "items": {
              "type": "array",
              "example": [
                {
                  "boolField": true,
                  "numField": 1,
                  "nullField": null,
                  "stringField": "string",
                  "listField": [
                    1,
                    2,
                    3
                  ]
                }
              ],
              "description": " The query's results, as a list of objects. Each object corresponds to a record returned by the query, and is an object with fields of simple values, where a simple value is either a basic value or a list of basic values. A basic value is either a number, boolean, string, or null.",
              "items": {
                "type": "object",
                "properties": {
                  "fields": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "title": "NqeSimpleValue"
                    }
                  }
                },
                "title": "NqeRecord"
              }
            },
            "snapshotId": {
              "type": "string",
              "example": "101",
              "description": "The ID of the Snapshot that the query was run against."
            }
          },
          "title": "NqeRunResult"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/runNqeQueryUsingPOST"
      },
      "task": true
    },
    {
      "name": "getAvailablePredefinedChecksUsingGET",
      "summary": "Gets available Predefined checks",
      "description": "Gets available Predefined checks",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "description": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "predefinedCheckType": {
                "type": "string"
              }
            },
            "title": "AvailablePredefinedCheck"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAvailablePredefinedChecksUsingGET"
      },
      "task": true
    },
    {
      "name": "getChecksUsingGET",
      "summary": "Gets checks (with status)",
      "description": "Gets checks (with status)",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "array",
          "info": "type: array",
          "required": true,
          "schema": {
            "title": "type",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creationDateMillis": {
                "type": "string"
              },
              "creatorId": {
                "type": "string"
              },
              "definition": {
                "type": "object",
                "properties": {
                  "checkType": {
                    "type": "string"
                  }
                },
                "title": "CheckDefinition"
              },
              "definitionDateMillis": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "editDateMillis": {
                "type": "string"
              },
              "editorId": {
                "type": "string"
              },
              "enabled": {
                "type": "boolean"
              },
              "executionDateMillis": {
                "type": "string"
              },
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "note": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "tags": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "NetworkCheckResult"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getChecksUsingGET"
      },
      "task": true
    },
    {
      "name": "addCheckUsingPOST",
      "summary": "Adds a check",
      "description": "Adds a check",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "persistent",
          "type": "boolean",
          "info": "Whether to associate check with any later snapshots (including future snapshots) too: boolean",
          "required": false,
          "schema": {
            "title": "persistent",
            "type": "boolean"
          }
        },
        {
          "name": "check",
          "type": "object",
          "info": "check: object",
          "required": true,
          "schema": {
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "definition": {
              "type": "object",
              "properties": {
                "checkType": {
                  "type": "string"
                }
              },
              "title": "CheckDefinition"
            },
            "definitionDateMillis": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "editDateMillis": {
              "type": "string"
            },
            "editorId": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "executionDateMillis": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "note": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "tags": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "title": "NetworkCheckResult"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addCheckUsingPOST"
      },
      "task": true
    },
    {
      "name": "deactivateChecksUsingDELETE",
      "summary": "Deactivates all checks",
      "description": "Deactivates all checks",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deactivateChecksUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getSingleCheckUsingGET",
      "summary": "Gets a check (with status)",
      "description": "Gets a check (with status)",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "checkId",
          "type": "string",
          "info": "checkId: string",
          "required": true,
          "schema": {
            "title": "checkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "definition": {
              "type": "object",
              "properties": {
                "checkType": {
                  "type": "string"
                }
              },
              "title": "CheckDefinition"
            },
            "definitionDateMillis": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "diagnosis": {
              "type": "object",
              "properties": {
                "details": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "query": {
                        "type": "string"
                      },
                      "references": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "files": {
                              "type": "object",
                              "description": ""
                            },
                            "key": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            }
                          },
                          "title": "DiagnosisReference"
                        }
                      }
                    },
                    "title": "DiagnosisDetail"
                  }
                },
                "detailsIncomplete": {
                  "type": "boolean"
                },
                "summary": {
                  "type": "string"
                }
              },
              "title": "CheckDiagnosis"
            },
            "editDateMillis": {
              "type": "string"
            },
            "editorId": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "executionDateMillis": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "note": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "tags": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "title": "NetworkCheckResultWithDiagnosis"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSingleCheckUsingGET"
      },
      "task": true
    },
    {
      "name": "deactivateCheckUsingDELETE",
      "summary": "Deactivates a check",
      "description": "Deactivates a check",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "checkId",
          "type": "string",
          "info": "checkId: string",
          "required": true,
          "schema": {
            "title": "checkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deactivateCheckUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getAllAliasesUsingGET",
      "summary": "Gets all Aliases",
      "description": "Gets all Aliases",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "aliases": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "creationTime": {
                    "type": "string"
                  },
                  "creatorId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "title": "Alias"
              }
            }
          },
          "title": "AllAliases"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getAllAliasesUsingGET"
      },
      "task": true
    },
    {
      "name": "getSingleAliasUsingGET",
      "summary": "Gets an Alias",
      "description": "Gets an Alias",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "name: string",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationTime": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string"
            }
          },
          "title": "AliasAndValue"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSingleAliasUsingGET"
      },
      "task": true
    },
    {
      "name": "createSnapshotAliasUsingPUT",
      "summary": "Creates an Alias",
      "description": "Creates an Alias",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "name: string",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "aliasBuilder",
          "type": "object",
          "info": "aliasBuilder: {\"name\": \"string\", \"type\": \"Must be one of [HOSTS, DEVICES, INTERFACES, HEADERS, LOGICAL_NETWORK]\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "enum": [
                  "HOSTS",
                  "DEVICES",
                  "INTERFACES",
                  "HEADERS",
                  "LOGICAL_NETWORK"
                ]
              }
            },
            "title": "BuilderAlias"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationTime": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string"
            }
          },
          "title": "Alias"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSnapshotAliasUsingPUT"
      },
      "task": true
    },
    {
      "name": "deactivateAliasUsingDELETE",
      "summary": "Deletes an Alias",
      "description": "Deletes an Alias",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "name: string",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationTime": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string"
            }
          },
          "title": "Alias"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deactivateAliasUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getDeviceFilesUsingGET",
      "summary": "Lists a device’s data files",
      "description": "Lists a device’s data files",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "files": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "configuration.txt"
                  },
                  "bytes": {
                    "type": "number",
                    "example": 1234
                  }
                },
                "title": "DeviceFile"
              }
            }
          },
          "title": "DeviceFiles"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFilesUsingGET"
      },
      "task": true
    },
    {
      "name": "getDeviceFileContentUsingGET",
      "summary": "Gets device data file content",
      "description": "Most device data files are text files. Some are binary. A file’s extension indicates its type.\n\nFor convenience, the .txt file extension is optional (can be omitted).",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "fileName",
          "type": "string",
          "info": "fileName: string",
          "required": true,
          "schema": {
            "title": "fileName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFileContentUsingGET"
      },
      "task": true
    },
    {
      "name": "getL2VpnsUsingGET",
      "summary": "Gets a network’s L2VPNs",
      "description": "Gets a network’s L2VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l2Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "L2VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L2Vpn"
              }
            }
          },
          "title": "L2VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnsUsingGET"
      },
      "task": true
    },
    {
      "name": "putL2VpnsUsingPUT",
      "summary": "Replaces all of a network’s L2VPNs",
      "description": "Replaces all of a network’s L2VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnList",
          "type": "object",
          "info": "l2VpnList: {\"l2Vpns\": [{\"connections\": [{\"device\": \"string\", \"vlan\": 123, \"port\": \"string\"}], \"name\": \"string\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "l2Vpns": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "L2VpnConnection"
                      }
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "title": "L2Vpn"
                }
              }
            },
            "title": "L2VpnList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l2Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "L2VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L2Vpn"
              }
            }
          },
          "title": "L2VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL2VpnsUsingPUT"
      },
      "task": true
    },
    {
      "name": "getL2VpnUsingGET",
      "summary": "Gets an L2VPN",
      "description": "Gets an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnUsingGET"
      },
      "task": true
    },
    {
      "name": "putL2VpnUsingPUT",
      "summary": "Adds or replaces an L2VPN",
      "description": "Adds or replaces an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "l2Vpn",
          "type": "object",
          "info": "l2Vpn: {\"connections\": [{\"device\": \"string\", \"vlan\": 123, \"port\": \"string\"}], \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "device": {
                      "type": "string"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100
                    },
                    "port": {
                      "type": "string"
                    }
                  },
                  "title": "L2VpnConnection"
                }
              },
              "name": {
                "type": "string"
              }
            },
            "title": "L2Vpn"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL2VpnUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteL2VpnUsingDELETE",
      "summary": "Removes an L2VPN",
      "description": "Removes an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l2Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "L2VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L2Vpn"
              }
            }
          },
          "title": "L2VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL2VpnUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchL2VpnUsingPATCH",
      "summary": "Updates an L2VPN",
      "description": "Updates an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              }
            },
            "title": "L2VpnPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL2VpnUsingPATCH"
      },
      "task": true
    },
    {
      "name": "addL2VpnConnectionUsingPOST",
      "summary": "Adds a connection to an L2VPN",
      "description": "Adds a connection to an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"device\": \"string\", \"vlan\": 123, \"port\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "device": {
                "type": "string"
              },
              "vlan": {
                "type": "number",
                "example": 100
              },
              "port": {
                "type": "string"
              }
            },
            "title": "L2VpnConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL2VpnConnectionUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteL2VpnConnectionUsingDELETE",
      "summary": "Removes a connection from an L2VPN",
      "description": "Removes a connection from an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "portName",
          "type": "string",
          "info": "portName: string",
          "required": true,
          "schema": {
            "title": "portName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL2VpnConnectionUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getL3VpnsUsingGET",
      "summary": "Gets a network’s L3VPNs",
      "description": "Gets a network’s L3VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l3Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        },
                        "providerEdgeIp": {
                          "type": "string",
                          "example": "1.1.1.1"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "vrf": {
                          "type": "string"
                        }
                      },
                      "title": "L3VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L3Vpn"
              }
            }
          },
          "title": "L3VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnsUsingGET"
      },
      "task": true
    },
    {
      "name": "putL3VpnsUsingPUT",
      "summary": "Replaces all of a network’s L3VPNs",
      "description": "Replaces all of a network’s L3VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3Vpns",
          "type": "object",
          "info": "l3Vpns: {\"l3Vpns\": [{\"connections\": [{\"device\": \"string\", \"port\": \"string\", \"providerEdgeIp\": \"string\", \"vlan\": 123, \"vrf\": \"string\"}], \"name\": \"string\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "l3Vpns": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          },
                          "providerEdgeIp": {
                            "type": "string",
                            "example": "1.1.1.1"
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100
                          },
                          "vrf": {
                            "type": "string"
                          }
                        },
                        "title": "L3VpnConnection"
                      }
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "title": "L3Vpn"
                }
              }
            },
            "title": "L3VpnList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l3Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        },
                        "providerEdgeIp": {
                          "type": "string",
                          "example": "1.1.1.1"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "vrf": {
                          "type": "string"
                        }
                      },
                      "title": "L3VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L3Vpn"
              }
            }
          },
          "title": "L3VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL3VpnsUsingPUT"
      },
      "task": true
    },
    {
      "name": "getL3VpnUsingGET",
      "summary": "Gets an L3VPN",
      "description": "Gets an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnUsingGET"
      },
      "task": true
    },
    {
      "name": "putL3VpnUsingPUT",
      "summary": "Adds or replaces an L3VPN",
      "description": "Adds or replaces an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "l3Vpn",
          "type": "object",
          "info": "l3Vpn: {\"connections\": [{\"device\": \"string\", \"port\": \"string\", \"providerEdgeIp\": \"string\", \"vlan\": 123, \"vrf\": \"string\"}], \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "device": {
                      "type": "string"
                    },
                    "port": {
                      "type": "string"
                    },
                    "providerEdgeIp": {
                      "type": "string",
                      "example": "1.1.1.1"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100
                    },
                    "vrf": {
                      "type": "string"
                    }
                  },
                  "title": "L3VpnConnection"
                }
              },
              "name": {
                "type": "string"
              }
            },
            "title": "L3Vpn"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL3VpnUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteL3VpnUsingDELETE",
      "summary": "Removes an L3VPN",
      "description": "Removes an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l3Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        },
                        "providerEdgeIp": {
                          "type": "string",
                          "example": "1.1.1.1"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "vrf": {
                          "type": "string"
                        }
                      },
                      "title": "L3VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L3Vpn"
              }
            }
          },
          "title": "L3VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3VpnUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchL3VpnUsingPATCH",
      "summary": "Updates an L3VPN",
      "description": "Updates an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              }
            },
            "title": "L3VpnPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3VpnUsingPATCH"
      },
      "task": true
    },
    {
      "name": "addL3VpnConnectionUsingPOST",
      "summary": "Adds a connection to an L3VPN",
      "description": "Adds a connection to an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"device\": \"string\", \"port\": \"string\", \"providerEdgeIp\": \"string\", \"vlan\": 123, \"vrf\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "device": {
                "type": "string"
              },
              "port": {
                "type": "string"
              },
              "providerEdgeIp": {
                "type": "string",
                "example": "1.1.1.1"
              },
              "vlan": {
                "type": "number",
                "example": 100
              },
              "vrf": {
                "type": "string"
              }
            },
            "title": "L3VpnConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL3VpnConnectionUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteL3VpnEdgePortUsingDELETE",
      "summary": "Removes a connection from an L3VPN",
      "description": "Removes a connection from an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "portName",
          "type": "string",
          "info": "portName: string",
          "required": true,
          "schema": {
            "title": "portName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3VpnEdgePortUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getPathsUsingGET",
      "summary": "Searches for paths by tracing packets through the network",
      "description": "Searches for paths by tracing packets through the network",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "srcIp",
          "type": "string",
          "info": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "srcIp",
            "type": "string"
          }
        },
        {
          "name": "dstIp",
          "type": "string",
          "info": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "dstIp",
            "type": "string"
          }
        },
        {
          "name": "intent",
          "type": "string",
          "info": "Specifies the intent for the search. Default PREFER_DELIVERED.\n*PREFER_VIOLATIONS*: Prefer paths that result in the traffic not getting delivered, e.g. drops, blackholes,...(description truncated): Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]",
          "required": false,
          "schema": {
            "title": "intent",
            "type": "string"
          }
        },
        {
          "name": "ipProto",
          "type": "number",
          "info": "the IP protocol: 123",
          "required": false,
          "schema": {
            "title": "ipProto",
            "type": "number"
          }
        },
        {
          "name": "srcPort",
          "type": "string",
          "info": "the L4 source port, like \"80\" or a range \"8080-8088\": string",
          "required": false,
          "schema": {
            "title": "srcPort",
            "type": "string"
          }
        },
        {
          "name": "dstPort",
          "type": "string",
          "info": "the L4 destination port, like \"80\" or a range \"8080-8088\": string",
          "required": false,
          "schema": {
            "title": "dstPort",
            "type": "string"
          }
        },
        {
          "name": "icmpType",
          "type": "number",
          "info": "the ICMP type. Can be specified only when ipProto = 1.: 123",
          "required": false,
          "schema": {
            "title": "icmpType",
            "type": "number"
          }
        },
        {
          "name": "includeNetworkFunctions",
          "type": "boolean",
          "info": "If true, the response includes detailed forwarding info for each hop.\nNote: Setting this to true increases the API response time.: boolean",
          "required": false,
          "schema": {
            "title": "includeNetworkFunctions",
            "type": "boolean"
          }
        },
        {
          "name": "maxCandidates",
          "type": "number",
          "info": "the limit on the number of search results computed, before applying any ranking criteria. Permitted range = 1 to 10,000. Default 5,000.: 123",
          "required": false,
          "schema": {
            "title": "maxCandidates",
            "type": "number"
          }
        },
        {
          "name": "maxResults",
          "type": "number",
          "info": "the limit on the number of search results returned by the API. First, the platform computes up to maxCandidates results that match the search criteria. Then they are sort...(description truncated): 123",
          "required": false,
          "schema": {
            "title": "maxResults",
            "type": "number"
          }
        },
        {
          "name": "maxReturnPathResults",
          "type": "number",
          "info": "the limit on the number of return path search results. Permitted range = 0 to 10,000. Default 0. Multicast (*, G) and (S, G) queries will always return 0 return path resu...(description truncated): 123",
          "required": false,
          "schema": {
            "title": "maxReturnPathResults",
            "type": "number"
          }
        },
        {
          "name": "maxSeconds",
          "type": "number",
          "info": "the timeout duration. Permitted range = 1 to 600. Default 30.: 123",
          "required": false,
          "schema": {
            "title": "maxSeconds",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "srcIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for source IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address. This discovery method is used to locate the rendezvous points of the multicast group and use their IP addresses as IP source."
            },
            "dstIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for destination IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*NAT*: The IP gets NAT'd in the network. The IP may either correspond directly to a VIP on a load balancer or a NAT'd IP on other devices such as routers. This discovery method is only used to locate destination IP addresses. NAT’d IP addresses are recursively resolved to determine where traffic to a given destination IP must be delivered in the network.\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address."
            },
            "info": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "returnPathInfo": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "timedOut": {
              "type": "boolean"
            },
            "queryUrl": {
              "type": "string",
              "description": "A Forward application URL at which this path search can be explored or refined interactively"
            }
          },
          "title": "PathSearchResponse"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathsUsingGET"
      },
      "task": true
    },
    {
      "name": "getPathsBulkUsingPOST",
      "summary": "Searches for paths by tracing sets of packets through the network",
      "description": "Searches for paths by tracing sets of packets through the network",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "request: {\"queries\": [{\"srcIp\": \"string\", \"dstIp\": \"string\", \"ipProto\": 123, \"srcPort\": \"string\", \"dstPort\": \"string\", \"icmpType\": 123}], \"intent\": \"Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]\", \"maxCandidates\": 123, \"maxResults\": 123, \"maxReturnPathResults\": 123, \"maxSeconds\": 123, \"maxOverallSeconds\": 123, \"includeNetworkFunctions\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "queries"
            ],
            "properties": {
              "queries": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "dstIp",
                    "srcIp"
                  ],
                  "properties": {
                    "srcIp": {
                      "type": "string",
                      "description": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address)."
                    },
                    "dstIp": {
                      "type": "string",
                      "description": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address)."
                    },
                    "srcPort": {
                      "type": "string",
                      "description": "the L4 source port, like \"80\" or a range \"8080-8088\""
                    },
                    "dstPort": {
                      "type": "string",
                      "description": "the L4 destination port, like \"80\" or a range \"8080-8088\""
                    }
                  },
                  "title": "PathSearchQuery"
                }
              },
              "intent": {
                "type": "string",
                "description": "Specifies the intent for the search. Default PREFER_DELIVERED.\n*PREFER_VIOLATIONS*: Prefer paths that result in the traffic not getting delivered, e.g. drops, blackholes, loops. An example usage is while trying to evaluate if the specified traffic always gets delivered to the destination along all path choices.\n*PREFER_DELIVERED*: Prefer paths that result in the traffic getting delivered. An example usage is while trying to evaluate if traffic gets delivered to the destination along any path choice.\n*VIOLATIONS_ONLY*: Search for paths where traffic is not delivered to the destination.\n*SINGLE_BEST*: (Deprecated) Same as \"PREFER_DELIVERED\" with a maximum of 1 result\nand 0 or 1 return path results.",
                "enum": [
                  "PREFER_VIOLATIONS",
                  "PREFER_DELIVERED",
                  "VIOLATIONS_ONLY",
                  "SINGLE_BEST"
                ]
              },
              "maxCandidates": {
                "type": "number",
                "description": "the limit on the number of search results computed, before applying any ranking criteria. Permitted range = 1 to 10,000. Default 5,000."
              },
              "maxResults": {
                "type": "number",
                "description": "the limit on the number of search results returned by the API. First, the platform computes up to maxCandidates results that match the search criteria. Then they are sorted by various ranking criteria. A key ranking factor is path length, preferring longer paths (greatest reach) in the network over shorter ones. Finally, the API limits the number of returned search results to maxResults. Permitted range = 1 to maxCandidates. Default 1."
              },
              "maxReturnPathResults": {
                "type": "number",
                "description": "the limit on the number of return path search results. Permitted range = 0 to 10,000. Default 0. Multicast (*, G) and (S, G) queries will always return 0 return path results regardless of this value."
              },
              "maxSeconds": {
                "type": "number",
                "description": "the timeout duration per search query. Permitted range = 1 to 600. Default 30."
              },
              "maxOverallSeconds": {
                "type": "number",
                "description": "the overall timeout duration. Permitted range = 1 to 7,200. Default equal to the timeout duration for a single query."
              },
              "includeNetworkFunctions": {
                "type": "boolean",
                "description": "If true, the response includes detailed forwarding info for each hop.\nNote: Setting this to true increases the API response time."
              }
            },
            "title": "PathSearchBulkRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "srcIpLocationType": {
                "type": "string",
                "description": "Specifies the location discovery method for source IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address. This discovery method is used to locate the rendezvous points of the multicast group and use their IP addresses as IP source."
              },
              "dstIpLocationType": {
                "type": "string",
                "description": "Specifies the location discovery method for destination IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*NAT*: The IP gets NAT'd in the network. The IP may either correspond directly to a VIP on a load balancer or a NAT'd IP on other devices such as routers. This discovery method is only used to locate destination IP addresses. NAT’d IP addresses are recursively resolved to determine where traffic to a given destination IP must be delivered in the network.\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address."
              },
              "info": {
                "type": "object",
                "properties": {
                  "paths": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "forwardingOutcome": {
                          "type": "string",
                          "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                        },
                        "securityOutcome": {
                          "type": "string",
                          "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                        },
                        "hops": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "behaviors": {
                                "type": "array",
                                "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "deviceName": {
                                "type": "string"
                              },
                              "deviceType": {
                                "type": "string"
                              },
                              "egressInterface": {
                                "type": "string",
                                "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                              },
                              "ingressInterface": {
                                "type": "string",
                                "description": "the physical interface name, where traffic entered the device"
                              },
                              "networkFunctions": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "PathHop"
                          }
                        }
                      },
                      "title": "Path"
                    }
                  },
                  "totalHits": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                      },
                      "value": {
                        "type": "number"
                      }
                    },
                    "title": "TotalHits",
                    "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                  }
                },
                "title": "PathInfo"
              },
              "returnPathInfo": {
                "type": "object",
                "properties": {
                  "paths": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "forwardingOutcome": {
                          "type": "string",
                          "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                        },
                        "securityOutcome": {
                          "type": "string",
                          "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                        },
                        "hops": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "behaviors": {
                                "type": "array",
                                "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "deviceName": {
                                "type": "string"
                              },
                              "deviceType": {
                                "type": "string"
                              },
                              "egressInterface": {
                                "type": "string",
                                "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                              },
                              "ingressInterface": {
                                "type": "string",
                                "description": "the physical interface name, where traffic entered the device"
                              },
                              "networkFunctions": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "PathHop"
                          }
                        }
                      },
                      "title": "Path"
                    }
                  },
                  "totalHits": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                      },
                      "value": {
                        "type": "number"
                      }
                    },
                    "title": "TotalHits",
                    "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                  }
                },
                "title": "PathInfo"
              },
              "timedOut": {
                "type": "boolean"
              },
              "queryUrl": {
                "type": "string",
                "description": "A Forward application URL at which this path search can be explored or refined interactively"
              }
            },
            "title": "PathSearchResponse"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathsBulkUsingPOST"
      },
      "task": true
    },
    {
      "name": "getTracePathsBulkSeqUsingPOST",
      "summary": "Searches for paths by tracing sets of packets through the network",
      "description": "Searches for paths by tracing sets of packets through the network",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "request: {\"queries\": [{\"srcIp\": \"string\", \"dstIp\": \"string\", \"ipProto\": 123, \"srcPort\": \"string\", \"dstPort\": \"string\", \"icmpType\": 123}], \"intent\": \"Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]\", \"maxCandidates\": 123, \"maxResults\": 123, \"maxReturnPathResults\": 123, \"maxSeconds\": 123, \"maxOverallSeconds\": 123, \"includeNetworkFunctions\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "queries"
            ],
            "properties": {
              "queries": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "dstIp",
                    "srcIp"
                  ],
                  "properties": {
                    "srcIp": {
                      "type": "string",
                      "description": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address)."
                    },
                    "dstIp": {
                      "type": "string",
                      "description": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address)."
                    },
                    "srcPort": {
                      "type": "string",
                      "description": "the L4 source port, like \"80\" or a range \"8080-8088\""
                    },
                    "dstPort": {
                      "type": "string",
                      "description": "the L4 destination port, like \"80\" or a range \"8080-8088\""
                    }
                  },
                  "title": "PathSearchQuery"
                }
              },
              "intent": {
                "type": "string",
                "description": "Specifies the intent for the search. Default PREFER_DELIVERED.\n*PREFER_VIOLATIONS*: Prefer paths that result in the traffic not getting delivered, e.g. drops, blackholes, loops. An example usage is while trying to evaluate if the specified traffic always gets delivered to the destination along all path choices.\n*PREFER_DELIVERED*: Prefer paths that result in the traffic getting delivered. An example usage is while trying to evaluate if traffic gets delivered to the destination along any path choice.\n*VIOLATIONS_ONLY*: Search for paths where traffic is not delivered to the destination.\n*SINGLE_BEST*: (Deprecated) Same as \"PREFER_DELIVERED\" with a maximum of 1 result\nand 0 or 1 return path results.",
                "enum": [
                  "PREFER_VIOLATIONS",
                  "PREFER_DELIVERED",
                  "VIOLATIONS_ONLY",
                  "SINGLE_BEST"
                ]
              },
              "maxCandidates": {
                "type": "number",
                "description": "the limit on the number of search results computed, before applying any ranking criteria. Permitted range = 1 to 10,000. Default 5,000."
              },
              "maxResults": {
                "type": "number",
                "description": "the limit on the number of search results returned by the API. First, the platform computes up to maxCandidates results that match the search criteria. Then they are sorted by various ranking criteria. A key ranking factor is path length, preferring longer paths (greatest reach) in the network over shorter ones. Finally, the API limits the number of returned search results to maxResults. Permitted range = 1 to maxCandidates. Default 1."
              },
              "maxReturnPathResults": {
                "type": "number",
                "description": "the limit on the number of return path search results. Permitted range = 0 to 10,000. Default 0. Multicast (*, G) and (S, G) queries will always return 0 return path results regardless of this value."
              },
              "maxSeconds": {
                "type": "number",
                "description": "the timeout duration per search query. Permitted range = 1 to 600. Default 30."
              },
              "maxOverallSeconds": {
                "type": "number",
                "description": "the overall timeout duration. Permitted range = 1 to 7,200. Default equal to the timeout duration for a single query."
              },
              "includeNetworkFunctions": {
                "type": "boolean",
                "description": "If true, the response includes detailed forwarding info for each hop.\nNote: Setting this to true increases the API response time."
              }
            },
            "title": "PathSearchBulkRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "srcIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for source IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address. This discovery method is used to locate the rendezvous points of the multicast group and use their IP addresses as IP source."
            },
            "dstIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for destination IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*NAT*: The IP gets NAT'd in the network. The IP may either correspond directly to a VIP on a load balancer or a NAT'd IP on other devices such as routers. This discovery method is only used to locate destination IP addresses. NAT’d IP addresses are recursively resolved to determine where traffic to a given destination IP must be delivered in the network.\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address."
            },
            "info": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "returnPathInfo": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "timedOut": {
              "type": "boolean"
            },
            "queryUrl": {
              "type": "string",
              "description": "A Forward application URL at which this path search can be explored or refined interactively"
            }
          },
          "title": "PathSearchResponse"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTracePathsBulkSeqUsingPOST"
      },
      "task": true
    },
    {
      "name": "getPathsBulkByNetworkIdUsingPOST",
      "summary": "Searches for paths by tracing sets of packets through the network",
      "description": "Searches for paths by tracing sets of packets through the network",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "request: {\"queries\": [{\"srcIp\": \"string\", \"dstIp\": \"string\", \"ipProto\": 123, \"srcPort\": \"string\", \"dstPort\": \"string\", \"icmpType\": 123}], \"intent\": \"Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]\", \"maxCandidates\": 123, \"maxResults\": 123, \"maxReturnPathResults\": 123, \"maxSeconds\": 123, \"maxOverallSeconds\": 123, \"includeNetworkFunctions\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "queries"
            ],
            "title": "PathSearchBulkRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "title": "PathSearchResponse"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathsBulkByNetworkIdUsingPOST"
      },
      "task": true
    },
    {
      "name": "getTracePathsBulkSeqByNetworkIdUsingPOST",
      "summary": "Searches for paths by tracing sets of packets through the network",
      "description": "Searches for paths by tracing sets of packets through the network",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "request: {\"queries\": [{\"srcIp\": \"string\", \"dstIp\": \"string\", \"ipProto\": 123, \"srcPort\": \"string\", \"dstPort\": \"string\", \"icmpType\": 123}], \"intent\": \"Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]\", \"maxCandidates\": 123, \"maxResults\": 123, \"maxReturnPathResults\": 123, \"maxSeconds\": 123, \"maxOverallSeconds\": 123, \"includeNetworkFunctions\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "queries"
            ],
            "properties": {
              "queries": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "dstIp",
                    "srcIp"
                  ],
                  "properties": {
                    "srcIp": {
                      "type": "string",
                      "description": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address)."
                    },
                    "dstIp": {
                      "type": "string",
                      "description": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address)."
                    },
                    "srcPort": {
                      "type": "string",
                      "description": "the L4 source port, like \"80\" or a range \"8080-8088\""
                    },
                    "dstPort": {
                      "type": "string",
                      "description": "the L4 destination port, like \"80\" or a range \"8080-8088\""
                    }
                  },
                  "title": "PathSearchQuery"
                }
              },
              "intent": {
                "type": "string",
                "description": "Specifies the intent for the search. Default PREFER_DELIVERED.\n*PREFER_VIOLATIONS*: Prefer paths that result in the traffic not getting delivered, e.g. drops, blackholes, loops. An example usage is while trying to evaluate if the specified traffic always gets delivered to the destination along all path choices.\n*PREFER_DELIVERED*: Prefer paths that result in the traffic getting delivered. An example usage is while trying to evaluate if traffic gets delivered to the destination along any path choice.\n*VIOLATIONS_ONLY*: Search for paths where traffic is not delivered to the destination.\n*SINGLE_BEST*: (Deprecated) Same as \"PREFER_DELIVERED\" with a maximum of 1 result\nand 0 or 1 return path results.",
                "enum": [
                  "PREFER_VIOLATIONS",
                  "PREFER_DELIVERED",
                  "VIOLATIONS_ONLY",
                  "SINGLE_BEST"
                ]
              },
              "maxCandidates": {
                "type": "number",
                "description": "the limit on the number of search results computed, before applying any ranking criteria. Permitted range = 1 to 10,000. Default 5,000."
              },
              "maxResults": {
                "type": "number",
                "description": "the limit on the number of search results returned by the API. First, the platform computes up to maxCandidates results that match the search criteria. Then they are sorted by various ranking criteria. A key ranking factor is path length, preferring longer paths (greatest reach) in the network over shorter ones. Finally, the API limits the number of returned search results to maxResults. Permitted range = 1 to maxCandidates. Default 1."
              },
              "maxReturnPathResults": {
                "type": "number",
                "description": "the limit on the number of return path search results. Permitted range = 0 to 10,000. Default 0. Multicast (*, G) and (S, G) queries will always return 0 return path results regardless of this value."
              },
              "maxSeconds": {
                "type": "number",
                "description": "the timeout duration per search query. Permitted range = 1 to 600. Default 30."
              },
              "maxOverallSeconds": {
                "type": "number",
                "description": "the overall timeout duration. Permitted range = 1 to 7,200. Default equal to the timeout duration for a single query."
              },
              "includeNetworkFunctions": {
                "type": "boolean",
                "description": "If true, the response includes detailed forwarding info for each hop.\nNote: Setting this to true increases the API response time."
              }
            },
            "title": "PathSearchBulkRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result"
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTracePathsBulkSeqByNetworkIdUsingPOST"
      },
      "task": true
    },
    {
      "name": "getApiVersionUsingGET",
      "summary": "Gets the API’s current version",
      "description": "Gets the API’s current version",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "version": {
              "type": "string",
              "example": "1.8"
            }
          },
          "title": "ApiVersion"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getApiVersionUsingGET"
      },
      "task": true
    },
    {
      "name": "createDeviceCredentialsUsingPATCH",
      "summary": "Creates or replaces network device credentials",
      "description": "Any device credentials that specify an `id` will replace the device credential with that id if such a credential exists.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentials",
          "type": "array",
          "info": "credentials: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name",
                "password",
                "type"
              ],
              "properties": {
                "id": {
                  "type": "string",
                  "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
                  "description": "auto-generated if not provided"
                },
                "type": {
                  "type": "string",
                  "example": "LOGIN",
                  "enum": [
                    "LOGIN",
                    "PRIVILEGED_MODE",
                    "SHELL",
                    "KEY_STORE"
                  ]
                },
                "name": {
                  "type": "string",
                  "example": "admin (sjc)",
                  "description": "for display purposes in the application"
                },
                "username": {
                  "type": "string",
                  "example": "admin",
                  "description": "required for `LOGIN` and `SHELL` types"
                },
                "password": {
                  "type": "string",
                  "example": "my-s3cr3t-p4s$w0rd"
                },
                "content": {
                  "type": "string",
                  "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                  "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
                }
              },
              "title": "DeviceCredential"
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "name",
              "password",
              "type"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
                "description": "auto-generated if not provided"
              },
              "type": {
                "type": "string",
                "example": "LOGIN"
              },
              "name": {
                "type": "string",
                "example": "admin (sjc)",
                "description": "for display purposes in the application"
              },
              "username": {
                "type": "string",
                "example": "admin",
                "description": "required for `LOGIN` and `SHELL` types"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "content": {
                "type": "string",
                "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
              }
            },
            "title": "DeviceCredential"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createDeviceCredentialsUsingPATCH"
      },
      "task": true
    },
    {
      "name": "deleteDeviceSourcesUsingDELETE",
      "summary": "Deletes network device sources",
      "description": "Deletes network device sources",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "criteria",
          "type": "object",
          "info": "criteria: {\"names\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "names"
            ],
            "properties": {
              "names": {
                "type": "array",
                "example": [
                  "router_01",
                  "router_02"
                ],
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "DeviceSourceCriteria"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "devicesDeleted",
            "devicesNotFound"
          ],
          "properties": {
            "devicesDeleted": {
              "type": "array",
              "example": [
                "router_01"
              ],
              "items": {
                "type": "string"
              }
            },
            "devicesNotFound": {
              "type": "array",
              "example": [
                "router_02"
              ],
              "items": {
                "type": "string"
              }
            }
          },
          "title": "DeleteDeviceSourcesResult"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceSourcesUsingDELETE"
      },
      "task": true
    },
    {
      "name": "customZipSnapshotUsingPOST",
      "summary": "Exports a Snapshot subset, optionally obfuscated",
      "description": "Exports a network Snapshot as a .zip file, optionally limiting which devices are included and optionally [obfuscating](/docs/administration/system/obfuscate-snapshot/) sensitive data.\n\nTo limit which devices are included, specify either `\"includeDevices\"` or `\"excludeDevices\"`. To obfuscate, specify an `\"obfuscationKey\"`.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "params",
          "type": "object",
          "info": "params: {\"includeDevices\": \"array\", \"excludeDevices\": \"array\", \"obfuscationKey\": \"string\", \"obfuscateNames\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "includeDevices": {
                "type": "array",
                "example": [
                  "device-1",
                  "device-2"
                ],
                "description": "Must be absent if `\"excludeDevices\"` is specified.",
                "items": {
                  "type": "string"
                }
              },
              "excludeDevices": {
                "type": "array",
                "example": [
                  "device-6",
                  "device-7"
                ],
                "description": "Must be absent if `\"includeDevices\"` is specified.",
                "items": {
                  "type": "string"
                }
              },
              "obfuscationKey": {
                "type": "string",
                "example": "a-sEcr3t-kEy-th4t-i$-h4rd-to-guE$$",
                "description": "If specified, sensitive data will be [obfuscated](/docs/administration/system/obfuscate-snapshot/)."
              },
              "obfuscateNames": {
                "type": "boolean",
                "example": false,
                "description": "default: `false`. If specified, `\"obfuscationKey\"` must also be specified."
              }
            },
            "title": "SnapshotExportParams"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/customZipSnapshotUsingPOST"
      },
      "task": true
    },
    {
      "name": "deactivateAliasesUsingDELETE",
      "summary": "Deletes Aliases",
      "description": "Use the optional `name` parameter to delete only specific Aliases. It can be repeated as in `?name=foo&name=bar`. Omit the `name` parameter to delete all Aliases active in the Snapshot.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "array",
          "info": "name: array",
          "required": false,
          "schema": {
            "title": "name",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "aliases": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "creationTime": {
                    "type": "string"
                  },
                  "creatorId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "title": "Alias"
              }
            }
          },
          "title": "Aliases"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deactivateAliasesUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getDevicesUsingGET",
      "summary": "Gets a network’s devices",
      "description": "All glob filter parameters ignore case and support [the common glob wildcards](https://en.wikipedia.org/wiki/Glob_(programming)#Syntax) (`*`, `?`, `[abc]`, `[a-z]`).",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "`\"name\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "displayName",
          "type": "string",
          "info": "`\"displayName\"` glob filter. Use `?displayName=` to request devices that have no `\"displayName\"` property (because it’s the same as `\"name\"`).: string",
          "required": false,
          "schema": {
            "title": "displayName",
            "type": "string"
          }
        },
        {
          "name": "sourceName",
          "type": "string",
          "info": "`\"sourceName\"` glob filter. Use `?sourceName=` to request devices that have no `\"sourceName\"` property (because it’s the same as `\"name\"`).: string",
          "required": false,
          "schema": {
            "title": "sourceName",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "string",
          "info": "`\"type\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "type",
            "type": "string"
          }
        },
        {
          "name": "manufacturer",
          "type": "string",
          "info": "`\"manufacturer\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "manufacturer",
            "type": "string"
          }
        },
        {
          "name": "model",
          "type": "string",
          "info": "`\"model\"` glob filter. Use `?model=` to request devices with no `\"model\"` property.: string",
          "required": false,
          "schema": {
            "title": "model",
            "type": "string"
          }
        },
        {
          "name": "platform",
          "type": "string",
          "info": "`\"platform\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "platform",
            "type": "string"
          }
        },
        {
          "name": "osVersion",
          "type": "string",
          "info": "`\"osVersion\"` glob filter. Use `?osVersion=` to request devices with no `\"osVersion\"` property.: string",
          "required": false,
          "schema": {
            "title": "osVersion",
            "type": "string"
          }
        },
        {
          "name": "collectionError",
          "type": "string",
          "info": "`\"collectionError\"` glob filter. Use `?collectionError=` to request devices with no `\"collectionError\"` property (because collection succeeded). Use `?collectionError=*` ...(description truncated): string",
          "required": false,
          "schema": {
            "title": "collectionError",
            "type": "string"
          }
        },
        {
          "name": "processingError",
          "type": "string",
          "info": "`\"processingError\"` glob filter. Use `?processingError=` to request devices with no `\"processingError\"` property (because processing succeeded). Use `?processingError=*` ...(description truncated): string",
          "required": false,
          "schema": {
            "title": "processingError",
            "type": "string"
          }
        },
        {
          "name": "skip",
          "type": "number",
          "info": "Number of devices to skip (for paging): 123",
          "required": false,
          "schema": {
            "title": "skip",
            "type": "number"
          }
        },
        {
          "name": "limit",
          "type": "number",
          "info": "Maximum number of devices desired: 123",
          "required": false,
          "schema": {
            "title": "limit",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "The name that uniquely identifies the device in the network. For a standalone device, this is the [device source](#network-setup) name. For a virtual context, this is the device source name plus context name. For a cloud device, this is a globally unique identifier assigned by the cloud provider."
              },
              "displayName": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "The device’s common name, if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the name shown in the cloud provider’s console."
              },
              "sourceName": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "Name of the [device source](#network-setup), if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the cloud account name."
              },
              "type": {
                "type": "string",
                "example": "FIREWALL"
              },
              "manufacturer": {
                "type": "string",
                "example": "F5"
              },
              "model": {
                "type": "string",
                "example": "BIG-IP Virtual Edition",
                "description": "Absent if the device model name is unknown."
              },
              "platform": {
                "type": "string",
                "example": "f5"
              },
              "osVersion": {
                "type": "string",
                "example": "11.6.1",
                "description": "Absent if the OS version is unknown."
              },
              "managementIps": {
                "type": "array",
                "example": [
                  "10.10.10.10"
                ],
                "description": "Absent if no management IP addresses are known.",
                "items": {
                  "type": "string"
                }
              },
              "collectionError": {
                "type": "string",
                "example": "AUTHENTICATION_FAILED",
                "description": "Absent if there was no collection error. \"NONE\" never occurs and will soon be removed from the value list."
              },
              "processingError": {
                "type": "string",
                "example": "LICENSE_EXHAUSTED",
                "description": "Absent if there was no processing error."
              }
            },
            "title": "Device"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesUsingGET"
      },
      "task": true
    },
    {
      "name": "getDevicesByNetworkIdUsingGET",
      "summary": "Gets a network’s devices",
      "description": "All glob filter parameters ignore case and support [the common glob wildcards](https://en.wikipedia.org/wiki/Glob_(programming)#Syntax) (`*`, `?`, `[abc]`, `[a-z]`).",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "title": "Device"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesByNetworkIdUsingGET"
      },
      "task": true
    },
    {
      "name": "getOneDeviceUsingGET",
      "summary": "Gets a network device",
      "description": "Gets a network device",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "The name that uniquely identifies the device in the network. For a standalone device, this is the [device source](#network-setup) name. For a virtual context, this is the device source name plus context name. For a cloud device, this is a globally unique identifier assigned by the cloud provider."
            },
            "displayName": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "The device’s common name, if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the name shown in the cloud provider’s console."
            },
            "sourceName": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "Name of the [device source](#network-setup), if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the cloud account name."
            },
            "type": {
              "type": "string",
              "example": "FIREWALL"
            },
            "manufacturer": {
              "type": "string",
              "example": "F5"
            },
            "model": {
              "type": "string",
              "example": "BIG-IP Virtual Edition",
              "description": "Absent if the device model name is unknown."
            },
            "platform": {
              "type": "string",
              "example": "f5"
            },
            "osVersion": {
              "type": "string",
              "example": "11.6.1",
              "description": "Absent if the OS version is unknown."
            },
            "managementIps": {
              "type": "array",
              "example": [
                "10.10.10.10"
              ],
              "description": "Absent if no management IP addresses are known.",
              "items": {
                "type": "string"
              }
            },
            "collectionError": {
              "type": "string",
              "example": "AUTHENTICATION_FAILED",
              "description": "Absent if there was no collection error. \"NONE\" never occurs and will soon be removed from the value list."
            },
            "processingError": {
              "type": "string",
              "example": "LICENSE_EXHAUSTED",
              "description": "Absent if there was no processing error."
            }
          },
          "title": "Device"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOneDeviceUsingGET"
      },
      "task": true
    },
    {
      "name": "getMissingDevicesUsingGET",
      "summary": "Gets a network’s missing devices",
      "description": "Returns devices that are listed as CDP/LLDP neighbors of modeled devices but that aren’t yet included in the network model.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "devices": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "nyc-dc01-rtr02",
                    "description": "A device name different from the names of all network devices already modeled"
                  },
                  "ipAddresses": {
                    "type": "array",
                    "example": [
                      "10.10.10.10"
                    ],
                    "items": {
                      "type": "string"
                    }
                  },
                  "type": {
                    "type": "string",
                    "example": "cisco_ios_ssh",
                    "description": "Detected device type. Absent if undetermined. Never `\"unknown\"`."
                  },
                  "possibleTypes": {
                    "type": "array",
                    "example": [
                      "cisco_ios_ssh",
                      "cisco_ios_xr_ssh"
                    ],
                    "description": "Possible device types if `type` wasn’t determined. Present if and only if `type` is absent. Never contains `\"unknown\"`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "neighbors": {
                    "type": "array",
                    "example": [
                      "nyc-dc01-tor01",
                      "nyc-dc01-rtr01"
                    ],
                    "description": "The names of the modeled devices from which this device was discovered.",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "title": "MissingDevice"
              }
            }
          },
          "title": "MissingDevices"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getMissingDevicesUsingGET"
      },
      "task": true
    },
    {
      "name": "getInternetNodeUsingGET",
      "summary": "Gets the network’s internet node",
      "description": "Gets the network’s internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "InternetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeUsingGET"
      },
      "task": true
    },
    {
      "name": "putInternetNodeUsingPUT",
      "summary": "Creates or replaces the network's internet node",
      "description": "Creates or replaces the network's internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "internetNode",
          "type": "object",
          "info": "internetNode: {\"name\": \"string\", \"connections\": [{\"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"peerIps\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES]\", \"subnets\": \"array\", \"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "inet"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES"
                      ]
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    }
                  },
                  "title": "InetConnection"
                }
              }
            },
            "title": "InternetNode"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "InternetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putInternetNodeUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteInternetNodeUsingDELETE",
      "summary": "Removes the internet node",
      "description": "Removes the internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteInternetNodeUsingDELETE"
      },
      "task": true
    },
    {
      "name": "addInternetNodeConnectionUsingPOST",
      "summary": "Adds a connection to the internet node",
      "description": "Adds a connection to the internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"peerIps\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES]\", \"subnets\": \"array\", \"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "gatewayPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "peerIps": {
                "type": "array",
                "example": [
                  "1.1.1.1"
                ],
                "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                "items": {
                  "type": "string"
                }
              },
              "subnetAutoDiscovery": {
                "type": "string",
                "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets.",
                "enum": [
                  "NONE",
                  "IP_ROUTES",
                  "BGP_ROUTES"
                ]
              },
              "subnets": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "description": "Site subnets. Routes for these subnets are always created on the node.",
                "items": {
                  "type": "string"
                }
              },
              "uplinkPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "vlan": {
                "type": "number",
                "example": 100,
                "description": "The VLAN of traffic from `uplinkPort`, if tagged."
              }
            },
            "title": "InetConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "InternetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addInternetNodeConnectionUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteInternetNodeConnectionUsingDELETE",
      "summary": "Removes a connection from the internet node",
      "description": "Removes a connection from the internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "portName",
          "type": "string",
          "info": "portName: string",
          "required": true,
          "schema": {
            "title": "portName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "InternetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteInternetNodeConnectionUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getIntranetNodesUsingGET",
      "summary": "Gets a network’s intranet nodes",
      "description": "Gets a network’s intranet nodes",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "intranetNodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "inet"
                  },
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "peerIps": {
                          "type": "array",
                          "example": [
                            "1.1.1.1"
                          ],
                          "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "subnetAutoDiscovery": {
                          "type": "string",
                          "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                        },
                        "subnets": {
                          "type": "array",
                          "example": [
                            "123.223.47.0/24"
                          ],
                          "description": "Site subnets. Routes for these subnets are always created on the node.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        }
                      },
                      "title": "InetConnection"
                    }
                  }
                },
                "title": "IntranetNode"
              }
            }
          },
          "title": "IntranetNodeList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodesUsingGET"
      },
      "task": true
    },
    {
      "name": "putIntranetNodesUsingPUT",
      "summary": "Replaces all of a network’s intranet nodes",
      "description": "Replaces all of a network’s intranet nodes",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "intranetNodeList",
          "type": "object",
          "info": "intranetNodeList: {\"intranetNodes\": [{\"name\": \"string\", \"connections\": [{\"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"peerIps\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES]\", \"subnets\": \"array\", \"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123}]}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "intranetNodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "inet"
                    },
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "gatewayPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "peerIps": {
                            "type": "array",
                            "example": [
                              "1.1.1.1"
                            ],
                            "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "subnetAutoDiscovery": {
                            "type": "string",
                            "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets.",
                            "enum": [
                              "NONE",
                              "IP_ROUTES",
                              "BGP_ROUTES"
                            ]
                          },
                          "subnets": {
                            "type": "array",
                            "example": [
                              "123.223.47.0/24"
                            ],
                            "description": "Site subnets. Routes for these subnets are always created on the node.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "uplinkPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100,
                            "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                          }
                        },
                        "title": "InetConnection"
                      }
                    }
                  },
                  "title": "IntranetNode"
                }
              }
            },
            "title": "IntranetNodeList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "intranetNodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "inet"
                  },
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "peerIps": {
                          "type": "array",
                          "example": [
                            "1.1.1.1"
                          ],
                          "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "subnetAutoDiscovery": {
                          "type": "string",
                          "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                        },
                        "subnets": {
                          "type": "array",
                          "example": [
                            "123.223.47.0/24"
                          ],
                          "description": "Site subnets. Routes for these subnets are always created on the node.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        }
                      },
                      "title": "InetConnection"
                    }
                  }
                },
                "title": "IntranetNode"
              }
            }
          },
          "title": "IntranetNodeList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putIntranetNodesUsingPUT"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeUsingGET",
      "summary": "Gets an intranet node",
      "description": "Gets an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeUsingGET"
      },
      "task": true
    },
    {
      "name": "putIntranetNodeUsingPUT",
      "summary": "Adds or replaces an intranet node",
      "description": "Adds or replaces an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "intranetNode",
          "type": "object",
          "info": "intranetNode: {\"name\": \"string\", \"connections\": [{\"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"peerIps\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES]\", \"subnets\": \"array\", \"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "inet"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES"
                      ]
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    }
                  },
                  "title": "InetConnection"
                }
              }
            },
            "title": "IntranetNode"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putIntranetNodeUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteIntranetNodeUsingDELETE",
      "summary": "Removes an intranet node",
      "description": "Removes an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "intranetNodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "inet"
                  },
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "peerIps": {
                          "type": "array",
                          "example": [
                            "1.1.1.1"
                          ],
                          "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "subnetAutoDiscovery": {
                          "type": "string",
                          "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                        },
                        "subnets": {
                          "type": "array",
                          "example": [
                            "123.223.47.0/24"
                          ],
                          "description": "Site subnets. Routes for these subnets are always created on the node.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        }
                      },
                      "title": "InetConnection"
                    }
                  }
                },
                "title": "IntranetNode"
              }
            }
          },
          "title": "IntranetNodeList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIntranetNodeUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchIntranetNodeUsingPATCH",
      "summary": "Updates an intranet node",
      "description": "Updates an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              }
            },
            "title": "IntranetNodePatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchIntranetNodeUsingPATCH"
      },
      "task": true
    },
    {
      "name": "addIntranetNodeConnectionUsingPOST",
      "summary": "Adds a connection to an intranet node",
      "description": "Adds a connection to an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"peerIps\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES]\", \"subnets\": \"array\", \"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "gatewayPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "peerIps": {
                "type": "array",
                "example": [
                  "1.1.1.1"
                ],
                "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                "items": {
                  "type": "string"
                }
              },
              "subnetAutoDiscovery": {
                "type": "string",
                "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets.",
                "enum": [
                  "NONE",
                  "IP_ROUTES",
                  "BGP_ROUTES"
                ]
              },
              "subnets": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "description": "Site subnets. Routes for these subnets are always created on the node.",
                "items": {
                  "type": "string"
                }
              },
              "uplinkPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "vlan": {
                "type": "number",
                "example": 100,
                "description": "The VLAN of traffic from `uplinkPort`, if tagged."
              }
            },
            "title": "InetConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addIntranetNodeConnectionUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteIntranetNodeConnectionUsingDELETE",
      "summary": "Removes a connection from an intranet node",
      "description": "Removes a connection from an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "portName",
          "type": "string",
          "info": "portName: string",
          "required": true,
          "schema": {
            "title": "portName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIntranetNodeConnectionUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getWanCircuitsUsingGET",
      "summary": "Gets a network’s WAN circuits",
      "description": "Gets a network’s WAN circuits",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "wanCircuits": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "connection1",
                  "connection2",
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "wan-circuit-01"
                  },
                  "connection1": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  },
                  "connection2": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  }
                },
                "title": "WanCircuit"
              }
            }
          },
          "title": "WanCircuitList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitsUsingGET"
      },
      "task": true
    },
    {
      "name": "putWanCircuitsUsingPUT",
      "summary": "Replaces all of a network’s WAN circuits",
      "description": "Replaces all of a network’s WAN circuits",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitList",
          "type": "object",
          "info": "wanCircuitList: {\"wanCircuits\": [{\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "wanCircuits": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "connection1",
                    "connection2",
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "wan-circuit-01"
                    },
                    "connection1": {
                      "type": "object",
                      "required": [
                        "device",
                        "port"
                      ],
                      "properties": {
                        "device": {
                          "type": "string",
                          "description": "A customer edge device name"
                        },
                        "port": {
                          "type": "string",
                          "description": "The name of the connected port on `device`"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `port`, if tagged"
                        }
                      },
                      "title": "WanCircuitConnection"
                    },
                    "connection2": {
                      "type": "object",
                      "required": [
                        "device",
                        "port"
                      ],
                      "properties": {
                        "device": {
                          "type": "string",
                          "description": "A customer edge device name"
                        },
                        "port": {
                          "type": "string",
                          "description": "The name of the connected port on `device`"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `port`, if tagged"
                        }
                      },
                      "title": "WanCircuitConnection"
                    }
                  },
                  "title": "WanCircuit"
                }
              }
            },
            "title": "WanCircuitList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "wanCircuits": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "connection1",
                  "connection2",
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "wan-circuit-01"
                  },
                  "connection1": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  },
                  "connection2": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  }
                },
                "title": "WanCircuit"
              }
            }
          },
          "title": "WanCircuitList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putWanCircuitsUsingPUT"
      },
      "task": true
    },
    {
      "name": "getWanCircuitUsingGET",
      "summary": "Gets a WAN circuit",
      "description": "Gets a WAN circuit",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "connection1",
            "connection2",
            "name"
          ],
          "properties": {
            "name": {
              "type": "string",
              "example": "wan-circuit-01"
            },
            "connection1": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            },
            "connection2": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            }
          },
          "title": "WanCircuit"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitUsingGET"
      },
      "task": true
    },
    {
      "name": "putWanCircuitUsingPUT",
      "summary": "Adds or replaces a WAN circuit",
      "description": "Adds or replaces a WAN circuit",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "wanCircuit",
          "type": "object",
          "info": "wanCircuit: {\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connection1",
              "connection2",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "wan-circuit-01"
              },
              "connection1": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  }
                },
                "title": "WanCircuitConnection"
              },
              "connection2": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  }
                },
                "title": "WanCircuitConnection"
              }
            },
            "title": "WanCircuit"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "connection1",
            "connection2",
            "name"
          ],
          "properties": {
            "name": {
              "type": "string",
              "example": "wan-circuit-01"
            },
            "connection1": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            },
            "connection2": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            }
          },
          "title": "WanCircuit"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putWanCircuitUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteWanCircuitUsingDELETE",
      "summary": "Removes a WAN circuit",
      "description": "Removes a WAN circuit",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "wanCircuits": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "connection1",
                  "connection2",
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "wan-circuit-01"
                  },
                  "connection1": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  },
                  "connection2": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  }
                },
                "title": "WanCircuit"
              }
            }
          },
          "title": "WanCircuitList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteWanCircuitUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchWanCircuitUsingPATCH",
      "summary": "Updates a WAN circuit",
      "description": "Updates a WAN circuit",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "wan-circuit-01"
              },
              "connection1": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  }
                },
                "title": "WanCircuitConnection"
              },
              "connection2": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  }
                },
                "title": "WanCircuitConnection"
              }
            },
            "title": "WanCircuitPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "connection1",
            "connection2",
            "name"
          ],
          "properties": {
            "name": {
              "type": "string",
              "example": "wan-circuit-01"
            },
            "connection1": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            },
            "connection2": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            }
          },
          "title": "WanCircuit"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchWanCircuitUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getCveIndexUsingGET",
      "summary": "Exports the CVE index",
      "description": "The CVE index is a gzipped binary (.bin.gz) file.\n\nTo download the latest one from fwd.app:\n\n`curl -vu  :  https://fwd.app/api/cve-index -o cve-index.bin.gz`\n\nThe response includes a `Digest` header containing the file’s SHA-256 digest.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getCveIndexUsingGET"
      },
      "task": true
    },
    {
      "name": "putCveIndexUsingPUT",
      "summary": "Imports a new CVE index",
      "description": "Replaces the CVE index in use.\n\nTo upload a CVE index gzipped binary (.bin.gz) file downloaded from fwd.app:\n\n`curl -vu  :  https:// /api/cve-index?sha=  -T cve-index.bin.gz`\n\nThe `sha` parameter is optional but recommended. The ` ` value can be found in the `Digest` response header when a CVE index is downloaded from fwd.app.\n\n**Note:** This operation is for on-premises deployments only.",
      "input": [
        {
          "name": "content",
          "type": "string",
          "info": "content: string",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "sha",
          "type": "string",
          "info": "Optional SHA-256 digest (consisting of 64 hex digits) to use to verify the integrity of the CVE index: string",
          "required": false,
          "schema": {
            "title": "sha",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putCveIndexUsingPUT"
      },
      "task": true
    },
    {
      "name": "exportDatabaseUsingGET",
      "summary": "Exports a database backup .zip file",
      "description": "A database backup is a .zip file. To generate and download one:\n\n`curl -vu  :  https:// /api/database -o database.zip`\n\nStore backups carefully, as they may contain confidential information.\n\n**Note:** This operation is for on-premises deployments only.",
      "input": [
        {
          "name": "variant",
          "type": "string",
          "info": "Use `?variant=lightweight` to omit all network Snapshot data.: string",
          "required": false,
          "schema": {
            "title": "variant",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/exportDatabaseUsingGET"
      },
      "task": true
    },
    {
      "name": "importDatabaseUsingPUT",
      "summary": "Restores from a database backup .zip file",
      "description": "Replaces all system data (including user accounts) with the data from the backup and restarts the system. The system will be unavailable for a few minutes while it restarts.\n\nTo upload a database backup:\n\n`curl -vu  :  https:// /api/database -T database.zip -H 'Content-Type: application/zip'`\n\n\n\n**Note:** This operation is for on-premises deployments only.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/importDatabaseUsingPUT"
      },
      "task": true
    },
    {
      "name": "createWorkspaceNetworkUsingPOST",
      "summary": "Creates a Workspace network",
      "description": "A  Workspace network  is a network that collects from only a subset of the devices in a large “parent” network. This kind of network can be useful in time-sensitive situations like change management windows.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "The id of the parent network: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "request",
          "type": "object",
          "info": "Information about the new Workspace network: {\"name\": \"string\", \"note\": \"string\", \"devices\": \"array\", \"cloudAccounts\": \"array\", \"vcenters\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "My Network - Workspace A"
              },
              "note": {
                "type": "string",
                "example": "For change window 2021-10-30-ABC"
              },
              "devices": {
                "type": "array",
                "example": [
                  "nyc-dc01-tor01",
                  "nyc-dc01-rtr01"
                ],
                "description": "Names of the devices to include (`DeviceSource` names; see [Network Setup](#network-setup)). Can be omitted or empty if `cloudAccounts` or `vcenters` is nonempty.",
                "items": {
                  "type": "string"
                }
              },
              "cloudAccounts": {
                "type": "array",
                "example": [
                  "my-aws-account",
                  "my-gcp-account",
                  "my-azure-account"
                ],
                "description": "Names of the cloud accounts (<a class=\"fn-external-link\" target=\"_blank\" href=\"docs/enterprise/getting_started/configure_collection/cloud/aws_setup/\">AWS</a>), <a class=\"fn-external-link\" target=\"_blank\" href=\"docs/enterprise/getting_started/configure_collection/cloud/gcp_setup/\">GCP</a>), or <a class=\"fn-external-link\" target=\"_blank\" href=\"docs/enterprise/getting_started/configure_collection/cloud/azure_setup/\">Azure</a>) to include. Can be omitted or empty if `devices` or `vcenters` is nonempty.",
                "items": {
                  "type": "string"
                }
              },
              "vcenters": {
                "type": "array",
                "example": [
                  "vcenter-01"
                ],
                "description": "Names of the <a class=\"fn-external-link\" target=\"_blank\" href=\"docs/enterprise/getting_started/configure_collection/VMware_account/\">vCenters</a>) to include. Can be omitted or empty if `devices` or `cloudAccounts` is nonempty.",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "CreateWorkspaceNetworkRequest"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createWorkspaceNetworkUsingPOST"
      },
      "task": true
    },
    {
      "name": "getAtlasUsingGET",
      "summary": "Gets device locations",
      "description": "The response is a JSON object that maps device names to their location ids.\n\nSample response: `{\"atl-edge-fw01\": \"2\", \"ny-edge-fw2\": \"1\"}`",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getAtlasUsingGET"
      },
      "task": true
    },
    {
      "name": "updateAtlasUsingPATCH",
      "summary": "Updates device locations",
      "description": "The request is a JSON object that maps device names to their new location ids.\n\nSample request: `{\"atl-edge-fw01\": \"2\", \"ny-edge-fw2\": \"1\"}`",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: object",
          "required": true,
          "schema": {
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateAtlasUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getLocationsUsingGET",
      "summary": "Gets a network’s locations",
      "description": "Gets a network’s locations",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "id",
              "lat",
              "lng",
              "name"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "56"
              },
              "name": {
                "type": "string",
                "example": "Dayton DC"
              },
              "lat": {
                "type": "number",
                "example": 39.8113,
                "description": "A latitude (geographic coordinate), specified as an angle from -90 to +90 degrees"
              },
              "lng": {
                "type": "number",
                "example": -84.2722,
                "description": "A longitude (geographic coordinate), specified as an angle from -180 to +180 degrees"
              },
              "city": {
                "type": "string",
                "example": "Dayton",
                "description": "Name of the closest city (for display purposes only). Required if `adminDivision` or `country` is specified."
              },
              "adminDivision": {
                "type": "string",
                "example": "Ohio",
                "description": "Name of the administrative division (district, province, region, state, territory, etc.) that `city` is in (for display purposes only)"
              },
              "country": {
                "type": "string",
                "example": "United States",
                "description": "Name of the country that `city` is located in (for display purposes only). Required if `city` is specified."
              }
            },
            "title": "Location"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLocationsUsingGET"
      },
      "task": true
    },
    {
      "name": "addLocationUsingPOST",
      "summary": "Creates a network location",
      "description": "Creates a network location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "newLocation",
          "type": "object",
          "info": "newLocation: {\"name\": \"string\", \"lat\": 123, \"lng\": 123, \"city\": \"string\", \"adminDivision\": \"string\", \"country\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "lat",
              "lng",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "Dayton DC"
              },
              "lat": {
                "type": "number",
                "example": 39.8113,
                "description": "A latitude (geographic coordinate), specified as an angle from -90 to +90 degrees"
              },
              "lng": {
                "type": "number",
                "example": -84.2722,
                "description": "A longitude (geographic coordinate), specified as an angle from -180 to +180 degrees"
              },
              "city": {
                "type": "string",
                "example": "Dayton",
                "description": "Name of the closest city (for display purposes only). Required if `adminDivision` or `country` is specified."
              },
              "adminDivision": {
                "type": "string",
                "example": "Ohio",
                "description": "Name of the administrative division (district, province, region, state, territory, etc.) that `city` is in (for display purposes only)"
              },
              "country": {
                "type": "string",
                "example": "United States",
                "description": "Name of the country that `city` is located in (for display purposes only). Required if `city` is specified."
              }
            },
            "title": "NewLocation"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addLocationUsingPOST"
      },
      "task": true
    },
    {
      "name": "patchLocationsUsingPATCH",
      "summary": "Creates or updates network locations",
      "description": "Any patches that specify an `id` or an existing location’s `name` (ignoring case) will update the existing location. Any other patches will each create a new location. Patches are applied sequentially.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "patches",
          "type": "array",
          "info": "patches: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchLocationsUsingPATCH"
      },
      "task": true
    },
    {
      "name": "putLocationsUsingPUT",
      "summary": "Creates network locations",
      "description": "Creates multiple locations at once. Can be helpful when first setting up a network.\n\nFails (as a precautionary measure) with 409 Conflict if the network already has any network locations.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locations",
          "type": "array",
          "info": "locations: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putLocationsUsingPUT"
      },
      "task": true
    },
    {
      "name": "getLocationUsingGET",
      "summary": "Gets a network location",
      "description": "Gets a network location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLocationUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteLocationUsingDELETE",
      "summary": "Deletes a network location",
      "description": "When a location with devices is deleted, all of its devices will be unassigned.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteLocationUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchLocationUsingPATCH",
      "summary": "Updates a network location",
      "description": "Updates a network location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"lat\": 123, \"lng\": 123, \"city\": \"string\", \"adminDivision\": \"string\", \"country\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "Dayton DC"
              },
              "lat": {
                "type": "number",
                "example": 39.8113,
                "description": "A latitude (geographic coordinate), specified as an angle from -90 to +90 degrees"
              },
              "lng": {
                "type": "number",
                "example": -84.2722,
                "description": "A longitude (geographic coordinate), specified as an angle from -180 to +180 degrees"
              },
              "city": {
                "type": "string",
                "example": "Dayton",
                "description": "Name of the closest city (for display purposes only)"
              },
              "adminDivision": {
                "type": "string",
                "example": "Ohio",
                "description": "Name of the administrative division (district, province, region, state, territory, etc.) that `city` is in (for display purposes only)"
              },
              "country": {
                "type": "string",
                "example": "United States",
                "description": "Name of the country that `city` is located in (for display purposes only)"
              }
            },
            "title": "LocationPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchLocationUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getDeviceClustersUsingGET",
      "summary": "Gets the device clusters at a location",
      "description": "Gets the device clusters at a location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "devices",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "atl-edge"
              },
              "devices": {
                "type": "array",
                "example": [
                  "atl-edge-fw01",
                  "atl-edge-fw02",
                  "atl-isp-edge01",
                  "atl-isp-edge02"
                ],
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "DeviceCluster"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceClustersUsingGET"
      },
      "task": true
    },
    {
      "name": "addDeviceClusterUsingPOST",
      "summary": "Creates a device cluster at a location",
      "description": "Creates a device cluster at a location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "cluster",
          "type": "object",
          "info": "cluster: {\"name\": \"string\", \"devices\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "devices",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "atl-edge"
              },
              "devices": {
                "type": "array",
                "example": [
                  "atl-edge-fw01",
                  "atl-edge-fw02",
                  "atl-isp-edge01",
                  "atl-isp-edge02"
                ],
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "DeviceCluster"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addDeviceClusterUsingPOST"
      },
      "task": true
    },
    {
      "name": "putDeviceClustersUsingPUT",
      "summary": "Replaces all device clusters at a location",
      "description": "Replaces all device clusters at a location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "clusters",
          "type": "array",
          "info": "clusters: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putDeviceClustersUsingPUT"
      },
      "task": true
    },
    {
      "name": "getDeviceClusterUsingGET",
      "summary": "Gets a device cluster",
      "description": "Gets a device cluster",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "clusterName",
          "type": "string",
          "info": "clusterName: string",
          "required": true,
          "schema": {
            "title": "clusterName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceClusterUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteDeviceClusterUsingDELETE",
      "summary": "Deletes a device cluster",
      "description": "Deletes a device cluster",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "clusterName",
          "type": "string",
          "info": "clusterName: string",
          "required": true,
          "schema": {
            "title": "clusterName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceClusterUsingDELETE"
      },
      "task": true
    },
    {
      "name": "updateDeviceClusterUsingPATCH",
      "summary": "Updates a device cluster",
      "description": "Updates a device cluster",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "clusterName",
          "type": "string",
          "info": "clusterName: string",
          "required": true,
          "schema": {
            "title": "clusterName",
            "type": "string"
          }
        },
        {
          "name": "update",
          "type": "object",
          "info": "update: {\"name\": \"string\", \"devices\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "atl-edge"
              },
              "devices": {
                "type": "array",
                "example": [
                  "atl-edge-fw01",
                  "atl-edge-fw02",
                  "atl-isp-edge01",
                  "atl-isp-edge02"
                ],
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "DeviceClusterUpdate"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateDeviceClusterUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getCollectionSchedulesUsingGET",
      "summary": "Gets a network’s collection schedules",
      "description": "Gets a network’s collection schedules",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectionSchedulesUsingGET"
      },
      "task": true
    },
    {
      "name": "addCollectionScheduleUsingPOST",
      "summary": "Adds a network collection schedule",
      "description": "Adds a network collection schedule",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "schedule",
          "type": "object",
          "info": "schedule: {\"enabled\": \"boolean\", \"timeZone\": \"Must be one of [UTC, AFRICA_ACCRA, AFRICA_ADDIS_ABABA, AFRICA_ALGIERS, AFRICA_CAIRO, AFRICA_DAR_ES_SALAAM, AFRICA_JOHANNESBURG, AFRICA_KHARTOUM, AFRICA_KINSHASA, AFRICA_LAGOS, AFRICA_LUANDA, AFRICA_MAPUTO, AMERICA_ARGENTINA_BUENOS_AIRES, AMERICA_BOGOTA, AMERICA_CHICAGO, AMERICA_DENVER, AMERICA_LIMA, AMERICA_LOS_ANGELES, AMERICA_MEXICO_CITY, AMERICA_NEW_YORK, AMERICA_PHOENIX, AMERICA_SANTIAGO, AMERICA_SAO_PAULO, AMERICA_TORONTO, ASIA_AMMAN, ASIA_BAGHDAD, ASIA_BANGKOK, ASIA_BEIRUT, ASIA_DHAKA, ASIA_HO_CHI_MINH, ASIA_HONG_KONG, ASIA_JAKARTA, ASIA_JERUSALEM, ASIA_KARACHI, ASIA_KOLKATA, ASIA_KUALA_LUMPUR, ASIA_MANILA, ASIA_RIYADH, ASIA_SEOUL, ASIA_SHANGHAI, ASIA_SINGAPORE, ASIA_TEHRAN, ASIA_TOKYO, ASIA_YANGON, AUSTRALIA_ADELAIDE, AUSTRALIA_EUCLA, AUSTRALIA_PERTH, AUSTRALIA_SYDNEY, EUROPE_BELGRADE, EUROPE_BERLIN, EUROPE_ISTANBUL, EUROPE_LONDON, EUROPE_MADRID, EUROPE_MOSCOW, EUROPE_PARIS, EUROPE_ROME]\", \"daysOfTheWeek\": \"array\", \"times\": \"string\", \"periodInSeconds\": 123, \"startAt\": \"string\", \"endAt\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "daysOfTheWeek",
              "enabled",
              "timeZone"
            ],
            "properties": {
              "enabled": {
                "type": "boolean",
                "example": true,
                "description": "Whether the schedule is currently in effect"
              },
              "timeZone": {
                "type": "string",
                "example": "AMERICA_LOS_ANGELES",
                "description": "The time zone used to identify day boundaries and to interpret `times`, `startAt`, and `endAt`",
                "enum": [
                  "UTC",
                  "AFRICA_ACCRA",
                  "AFRICA_ADDIS_ABABA",
                  "AFRICA_ALGIERS",
                  "AFRICA_CAIRO",
                  "AFRICA_DAR_ES_SALAAM",
                  "AFRICA_JOHANNESBURG",
                  "AFRICA_KHARTOUM",
                  "AFRICA_KINSHASA",
                  "AFRICA_LAGOS",
                  "AFRICA_LUANDA",
                  "AFRICA_MAPUTO",
                  "AMERICA_ARGENTINA_BUENOS_AIRES",
                  "AMERICA_BOGOTA",
                  "AMERICA_CHICAGO",
                  "AMERICA_DENVER",
                  "AMERICA_LIMA",
                  "AMERICA_LOS_ANGELES",
                  "AMERICA_MEXICO_CITY",
                  "AMERICA_NEW_YORK",
                  "AMERICA_PHOENIX",
                  "AMERICA_SANTIAGO",
                  "AMERICA_SAO_PAULO",
                  "AMERICA_TORONTO",
                  "ASIA_AMMAN",
                  "ASIA_BAGHDAD",
                  "ASIA_BANGKOK",
                  "ASIA_BEIRUT",
                  "ASIA_DHAKA",
                  "ASIA_HO_CHI_MINH",
                  "ASIA_HONG_KONG",
                  "ASIA_JAKARTA",
                  "ASIA_JERUSALEM",
                  "ASIA_KARACHI",
                  "ASIA_KOLKATA",
                  "ASIA_KUALA_LUMPUR",
                  "ASIA_MANILA",
                  "ASIA_RIYADH",
                  "ASIA_SEOUL",
                  "ASIA_SHANGHAI",
                  "ASIA_SINGAPORE",
                  "ASIA_TEHRAN",
                  "ASIA_TOKYO",
                  "ASIA_YANGON",
                  "AUSTRALIA_ADELAIDE",
                  "AUSTRALIA_EUCLA",
                  "AUSTRALIA_PERTH",
                  "AUSTRALIA_SYDNEY",
                  "EUROPE_BELGRADE",
                  "EUROPE_BERLIN",
                  "EUROPE_ISTANBUL",
                  "EUROPE_LONDON",
                  "EUROPE_MADRID",
                  "EUROPE_MOSCOW",
                  "EUROPE_PARIS",
                  "EUROPE_ROME"
                ]
              },
              "daysOfTheWeek": {
                "type": "array",
                "example": [
                  0,
                  2,
                  4,
                  6
                ],
                "description": "The days of the week, Sun (0), Mon (1), …, Sat (6), on which the collection schedule is active. Never empty.",
                "items": {
                  "type": "number"
                }
              },
              "times": {
                "type": "string",
                "example": [
                  "01:00",
                  "06:00",
                  "11:00",
                  "16:00",
                  "21:00"
                ],
                "description": "Times of the day (in \"HH:mm\" format) at which network collections should start. Either `times` or `periodInSeconds` must be specified—not both. Never empty if present."
              },
              "periodInSeconds": {
                "type": "number",
                "example": 1800,
                "description": "How many seconds after the start of the most recent collection that the next one should begin. Either `times` or `periodInSeconds` must be specified—not both. Must be positive.\n\n**Note**: A Collector can only perform one network collection at a time. A scheduled collection will be delayed if it cannot start on time due to an earlier collection running long."
              },
              "startAt": {
                "type": "string",
                "example": "05:30",
                "description": "The time of day (in \"HH:mm\" format) at which a rate-based collection schedule begins. Must be absent if `times` is specified. Defaults to the start of the day (00:00)."
              },
              "endAt": {
                "type": "string",
                "example": "20:00",
                "description": "The time of day (in \"HH:mm\" format) at which a rate-based collection schedule ends. Must be absent if `times` is specified. Defaults to the end of the day."
              }
            },
            "title": "CollectionScheduleDefinition"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addCollectionScheduleUsingPOST"
      },
      "task": true
    },
    {
      "name": "getCollectionScheduleUsingGET",
      "summary": "Gets a network collection schedule",
      "description": "Gets a network collection schedule",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "scheduleId",
          "type": "string",
          "info": "scheduleId: string",
          "required": true,
          "schema": {
            "title": "scheduleId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectionScheduleUsingGET"
      },
      "task": true
    },
    {
      "name": "replaceCollectionScheduleUsingPUT",
      "summary": "Replaces a network collection schedule",
      "description": "Replaces a network collection schedule",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "scheduleId",
          "type": "string",
          "info": "scheduleId: string",
          "required": true,
          "schema": {
            "title": "scheduleId",
            "type": "string"
          }
        },
        {
          "name": "schedule",
          "type": "object",
          "info": "schedule: {\"id\": \"string\", \"enabled\": \"boolean\", \"timeZone\": \"Must be one of [UTC, AFRICA_ACCRA, AFRICA_ADDIS_ABABA, AFRICA_ALGIERS, AFRICA_CAIRO, AFRICA_DAR_ES_SALAAM, AFRICA_JOHANNESBURG, AFRICA_KHARTOUM, AFRICA_KINSHASA, AFRICA_LAGOS, AFRICA_LUANDA, AFRICA_MAPUTO, AMERICA_ARGENTINA_BUENOS_AIRES, AMERICA_BOGOTA, AMERICA_CHICAGO, AMERICA_DENVER, AMERICA_LIMA, AMERICA_LOS_ANGELES, AMERICA_MEXICO_CITY, AMERICA_NEW_YORK, AMERICA_PHOENIX, AMERICA_SANTIAGO, AMERICA_SAO_PAULO, AMERICA_TORONTO, ASIA_AMMAN, ASIA_BAGHDAD, ASIA_BANGKOK, ASIA_BEIRUT, ASIA_DHAKA, ASIA_HO_CHI_MINH, ASIA_HONG_KONG, ASIA_JAKARTA, ASIA_JERUSALEM, ASIA_KARACHI, ASIA_KOLKATA, ASIA_KUALA_LUMPUR, ASIA_MANILA, ASIA_RIYADH, ASIA_SEOUL, ASIA_SHANGHAI, ASIA_SINGAPORE, ASIA_TEHRAN, ASIA_TOKYO, ASIA_YANGON, AUSTRALIA_ADELAIDE, AUSTRALIA_EUCLA, AUSTRALIA_PERTH, AUSTRALIA_SYDNEY, EUROPE_BELGRADE, EUROPE_BERLIN, EUROPE_ISTANBUL, EUROPE_LONDON, EUROPE_MADRID, EUROPE_MOSCOW, EUROPE_PARIS, EUROPE_ROME]\", \"daysOfTheWeek\": \"array\", \"times\": \"string\", \"periodInSeconds\": 123, \"startAt\": \"string\", \"endAt\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "daysOfTheWeek",
              "enabled",
              "id",
              "timeZone"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": 1,
                "description": "Network-specific collection schedule identifier"
              },
              "enabled": {
                "type": "boolean",
                "example": true,
                "description": "Whether the schedule is currently in effect"
              },
              "timeZone": {
                "type": "string",
                "example": "AMERICA_LOS_ANGELES",
                "description": "The time zone used to identify day boundaries and to interpret `times`, `startAt`, and `endAt`",
                "enum": [
                  "UTC",
                  "AFRICA_ACCRA",
                  "AFRICA_ADDIS_ABABA",
                  "AFRICA_ALGIERS",
                  "AFRICA_CAIRO",
                  "AFRICA_DAR_ES_SALAAM",
                  "AFRICA_JOHANNESBURG",
                  "AFRICA_KHARTOUM",
                  "AFRICA_KINSHASA",
                  "AFRICA_LAGOS",
                  "AFRICA_LUANDA",
                  "AFRICA_MAPUTO",
                  "AMERICA_ARGENTINA_BUENOS_AIRES",
                  "AMERICA_BOGOTA",
                  "AMERICA_CHICAGO",
                  "AMERICA_DENVER",
                  "AMERICA_LIMA",
                  "AMERICA_LOS_ANGELES",
                  "AMERICA_MEXICO_CITY",
                  "AMERICA_NEW_YORK",
                  "AMERICA_PHOENIX",
                  "AMERICA_SANTIAGO",
                  "AMERICA_SAO_PAULO",
                  "AMERICA_TORONTO",
                  "ASIA_AMMAN",
                  "ASIA_BAGHDAD",
                  "ASIA_BANGKOK",
                  "ASIA_BEIRUT",
                  "ASIA_DHAKA",
                  "ASIA_HO_CHI_MINH",
                  "ASIA_HONG_KONG",
                  "ASIA_JAKARTA",
                  "ASIA_JERUSALEM",
                  "ASIA_KARACHI",
                  "ASIA_KOLKATA",
                  "ASIA_KUALA_LUMPUR",
                  "ASIA_MANILA",
                  "ASIA_RIYADH",
                  "ASIA_SEOUL",
                  "ASIA_SHANGHAI",
                  "ASIA_SINGAPORE",
                  "ASIA_TEHRAN",
                  "ASIA_TOKYO",
                  "ASIA_YANGON",
                  "AUSTRALIA_ADELAIDE",
                  "AUSTRALIA_EUCLA",
                  "AUSTRALIA_PERTH",
                  "AUSTRALIA_SYDNEY",
                  "EUROPE_BELGRADE",
                  "EUROPE_BERLIN",
                  "EUROPE_ISTANBUL",
                  "EUROPE_LONDON",
                  "EUROPE_MADRID",
                  "EUROPE_MOSCOW",
                  "EUROPE_PARIS",
                  "EUROPE_ROME"
                ]
              },
              "daysOfTheWeek": {
                "type": "array",
                "example": [
                  0,
                  2,
                  4,
                  6
                ],
                "description": "The days of the week, Sun (0), Mon (1), …, Sat (6), on which the collection schedule is active. Never empty.",
                "items": {
                  "type": "number"
                }
              },
              "times": {
                "type": "string",
                "example": [
                  "01:00",
                  "06:00",
                  "11:00",
                  "16:00",
                  "21:00"
                ],
                "description": "Times of the day (in \"HH:mm\" format) at which network collections should start. Either `times` or `periodInSeconds` must be specified—not both. Never empty if present."
              },
              "periodInSeconds": {
                "type": "number",
                "example": 1800,
                "description": "How many seconds after the start of the most recent collection that the next one should begin. Either `times` or `periodInSeconds` must be specified—not both. Must be positive.\n\n**Note**: A Collector can only perform one network collection at a time. A scheduled collection will be delayed if it cannot start on time due to an earlier collection running long."
              },
              "startAt": {
                "type": "string",
                "example": "05:30",
                "description": "The time of day (in \"HH:mm\" format) at which a rate-based collection schedule begins. Must be absent if `times` is specified. Defaults to the start of the day (00:00)."
              },
              "endAt": {
                "type": "string",
                "example": "20:00",
                "description": "The time of day (in \"HH:mm\" format) at which a rate-based collection schedule ends. Must be absent if `times` is specified. Defaults to the end of the day."
              }
            },
            "title": "CollectionSchedule"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/replaceCollectionScheduleUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteCollectionScheduleUsingDELETE",
      "summary": "Deletes a network collection schedule",
      "description": "Deletes a network collection schedule",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "scheduleId",
          "type": "string",
          "info": "scheduleId: string",
          "required": true,
          "schema": {
            "title": "scheduleId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteCollectionScheduleUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getDeviceSourceUsingGET",
      "summary": "Gets a network device source",
      "description": "Gets a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceSourceUsingGET"
      },
      "task": true
    },
    {
      "name": "patchDeviceSourceUsingPATCH",
      "summary": "Updates a network device source",
      "description": "Updates a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"type\": \"Must be one of [aruba_controller_ssh, aruba_switch_ssh, 128t_conductor_full, 128t_conductor, 128t_router, a10_acos_ssh, arista_eos_ssh, avi_controller_ssh, avi_controller_ssh_cli_user, avi_controller_ssh_via_host, avi_controller_api, bluecoat_ssh, cisco_ios_ssh, cisco_ios_telnet, cisco_ios_xe_ssh, cisco_ios_xe_telnet, cisco_ios_xr_ssh, cisco_nxos_ssh, cisco_asa_ssh, cisco_asa_telnet, cisco_asa_admin_ssh, cisco_asa_child_ssh, cisco_ftd_ssh, cisco_nxos_aci_ssh, cisco_apic_ssh, cisco_apic_only_ssh, cisco_sg_ssh, juniper_junos_ssh, juniper_srx_ssh, juniper_netscreen_ssh, pica8_ovs_ofctl_ssh, linux_ovs_ofctl_ssh, pica8_openflow_ovs_ssh, linux_os_ssh, f5_ssh, checkpoint_ssh, checkpoint_ssh_with_manager, checkpoint_mgmt_api, fortinet_ssh, hp_comware_ssh, hp_provision_ssh, panos_ssh, esxi_ssh, vcenter_api, viasat_encryptor_snmp3, netscaler_ssh, cumulus_ssh, riverbed_steelhead_ssh, riverbed_interceptor_ssh, aws_api, cisco_ucs_ssh, nsx_api, azure_api, avaya_ssh, avaya_telnet, gcp_api, silver_peak_edgeconnect_ssh, silver_peak_orchestrator_api, prisma_sdwan_ssh, prisma_sdwan_api, pensando_api, forcepoint_api, forcepoint_ssh, cisco_sdwan_ssh, cisco_sdwan_vsmart_ssh, bluecat_http, bluecat_https, nokia_ssh, brocade_switch_ssh, unknown]\", \"host\": \"string\", \"port\": 123, \"loginCredentialId\": \"string\", \"privilegedModePasswordId\": \"string\", \"shellCredentialId\": \"string\", \"keyStoreId\": \"string\", \"jumpServerId\": \"string\", \"fullCollectionLog\": \"boolean\", \"disableIpv6Collection\": \"boolean\", \"collectBgpAdvertisements\": \"boolean\", \"bgpTableType\": \"Must be one of [BOTH, ADJ_RIB_IN, ADJ_RIB_OUT]\", \"bgpPeerType\": \"Must be one of [BOTH, EBGP, IBGP]\", \"bgpSubnetsToCollect\": \"array\", \"disableCollection\": \"boolean\", \"paginationMode\": \"Must be one of [KEEP_UNCHANGED, DISABLE_PAGINATION, ENABLE_PAGINATION]\", \"largeRtt\": \"boolean\", \"openFlow\": {\"port\": 123}, \"note\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "my_router"
              },
              "type": {
                "type": "string",
                "example": "checkpoint_ssh",
                "enum": [
                  "aruba_controller_ssh",
                  "aruba_switch_ssh",
                  "128t_conductor_full",
                  "128t_conductor",
                  "128t_router",
                  "a10_acos_ssh",
                  "arista_eos_ssh",
                  "avi_controller_ssh",
                  "avi_controller_ssh_cli_user",
                  "avi_controller_ssh_via_host",
                  "avi_controller_api",
                  "bluecoat_ssh",
                  "cisco_ios_ssh",
                  "cisco_ios_telnet",
                  "cisco_ios_xe_ssh",
                  "cisco_ios_xe_telnet",
                  "cisco_ios_xr_ssh",
                  "cisco_nxos_ssh",
                  "cisco_asa_ssh",
                  "cisco_asa_telnet",
                  "cisco_asa_admin_ssh",
                  "cisco_asa_child_ssh",
                  "cisco_ftd_ssh",
                  "cisco_nxos_aci_ssh",
                  "cisco_apic_ssh",
                  "cisco_apic_only_ssh",
                  "cisco_sg_ssh",
                  "juniper_junos_ssh",
                  "juniper_srx_ssh",
                  "juniper_netscreen_ssh",
                  "pica8_ovs_ofctl_ssh",
                  "linux_ovs_ofctl_ssh",
                  "pica8_openflow_ovs_ssh",
                  "linux_os_ssh",
                  "f5_ssh",
                  "checkpoint_ssh",
                  "checkpoint_ssh_with_manager",
                  "checkpoint_mgmt_api",
                  "fortinet_ssh",
                  "hp_comware_ssh",
                  "hp_provision_ssh",
                  "panos_ssh",
                  "esxi_ssh",
                  "vcenter_api",
                  "viasat_encryptor_snmp3",
                  "netscaler_ssh",
                  "cumulus_ssh",
                  "riverbed_steelhead_ssh",
                  "riverbed_interceptor_ssh",
                  "aws_api",
                  "cisco_ucs_ssh",
                  "nsx_api",
                  "azure_api",
                  "avaya_ssh",
                  "avaya_telnet",
                  "gcp_api",
                  "silver_peak_edgeconnect_ssh",
                  "silver_peak_orchestrator_api",
                  "prisma_sdwan_ssh",
                  "prisma_sdwan_api",
                  "pensando_api",
                  "forcepoint_api",
                  "forcepoint_ssh",
                  "cisco_sdwan_ssh",
                  "cisco_sdwan_vsmart_ssh",
                  "bluecat_http",
                  "bluecat_https",
                  "nokia_ssh",
                  "brocade_switch_ssh",
                  "unknown"
                ]
              },
              "host": {
                "type": "string",
                "example": "10.121.7.13"
              },
              "port": {
                "type": "number",
                "example": 22
              },
              "loginCredentialId": {
                "type": "string",
                "example": "my-checkpoint-credentials"
              },
              "privilegedModePasswordId": {
                "type": "string",
                "example": "privileged_mode_password_3"
              },
              "shellCredentialId": {
                "type": "string",
                "example": "my_avi_shell_cred"
              },
              "keyStoreId": {
                "type": "string",
                "example": "my-tls-key-store"
              },
              "jumpServerId": {
                "type": "string",
                "example": "my-sjc-jump-server"
              },
              "fullCollectionLog": {
                "type": "boolean",
                "example": false
              },
              "disableIpv6Collection": {
                "type": "boolean",
                "example": false
              },
              "collectBgpAdvertisements": {
                "type": "boolean",
                "example": false
              },
              "bgpTableType": {
                "type": "string",
                "example": "ADJ_RIB_IN",
                "enum": [
                  "BOTH",
                  "ADJ_RIB_IN",
                  "ADJ_RIB_OUT"
                ]
              },
              "bgpPeerType": {
                "type": "string",
                "example": "EBGP",
                "enum": [
                  "BOTH",
                  "EBGP",
                  "IBGP"
                ]
              },
              "bgpSubnetsToCollect": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "items": {
                  "type": "string"
                }
              },
              "disableCollection": {
                "type": "boolean",
                "example": false
              },
              "paginationMode": {
                "type": "string",
                "example": "DISABLE_PAGINATION",
                "enum": [
                  "KEEP_UNCHANGED",
                  "DISABLE_PAGINATION",
                  "ENABLE_PAGINATION"
                ]
              },
              "largeRtt": {
                "type": "boolean",
                "example": false
              },
              "openFlow": {
                "type": "object",
                "properties": {
                  "port": {
                    "type": "number",
                    "example": 6653
                  }
                },
                "title": "OpenFlowConfig"
              },
              "note": {
                "type": "string",
                "example": "Just for testing at the moment"
              }
            },
            "title": "DeviceSourcePatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchDeviceSourceUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getNqeQueriesUsingGET",
      "summary": "Lists all NQE queries",
      "description": "Lists all NQE queries",
      "input": [
        {
          "name": "dir",
          "type": "string",
          "info": "If specified, include only queries in the given directory. The directory must start and end with a forward slash, such as `/L3/Advanced/`.: string",
          "required": false,
          "schema": {
            "title": "dir",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "queryId": {
                "type": "string",
                "example": "Q_123aabe22bfff1",
                "description": "The Query ID of the query"
              },
              "repository": {
                "type": "string",
                "example": "ORG",
                "enum": [
                  "FWD",
                  "ORG"
                ]
              },
              "path": {
                "type": "string",
                "example": "/L2/MtuConsistency",
                "description": "The unique path of the query, including its name, in the latest commit"
              },
              "intent": {
                "type": "string",
                "description": "The intent of the query in the latest commit"
              }
            },
            "title": "NqeQuery"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNqeQueriesUsingGET"
      },
      "task": true
    },
    {
      "name": "getVulnerabilitiesUsingGET",
      "summary": "Gets vulnerabilities and possibly impacted devices",
      "description": "Gets vulnerabilities and possibly impacted devices",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getVulnerabilitiesUsingGET"
      },
      "task": true
    },
    {
      "name": "getEncryptorsUsingGET",
      "summary": "Gets a network's encryptors",
      "description": "Gets a network's encryptors",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEncryptorsUsingGET"
      },
      "task": true
    },
    {
      "name": "putEncryptorsUsingPUT",
      "summary": "Replaces all of a network’s encryptors",
      "description": "Replaces all of a network’s encryptors",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "encryptorList",
          "type": "object",
          "info": "encryptorList: {\"encryptors\": [{\"name\": \"string\", \"siteConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"underlayConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"tunnels\": [{\"source\": \"string\", \"destination\": \"string\"}], \"subnets\": \"array\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "encryptors"
            ],
            "properties": {
              "encryptors": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "name",
                    "siteConnection",
                    "tunnels",
                    "underlayConnection"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "encryptor"
                    },
                    "siteConnection": {
                      "type": "object",
                      "required": [
                        "uplinkPort"
                      ],
                      "properties": {
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        },
                        "name": {
                          "type": "string",
                          "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                        }
                      },
                      "title": "EncryptorConnection"
                    },
                    "underlayConnection": {
                      "type": "object",
                      "required": [
                        "uplinkPort"
                      ],
                      "properties": {
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        },
                        "name": {
                          "type": "string",
                          "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                        }
                      },
                      "title": "EncryptorConnection"
                    },
                    "tunnels": {
                      "type": "array",
                      "description": "Tunnels to other encryptor devices. A tunnel source address is modeled as residing on this device and the destination addresses on another encryptor device. A source address may be reused on an encryptor. Each destination address must match the source address of the tunnel on another encryptor, and vice-versa",
                      "items": {
                        "type": "object",
                        "required": [
                          "destination",
                          "source"
                        ],
                        "properties": {
                          "source": {
                            "type": "string",
                            "example": "1.1.1.1",
                            "description": "Source IP address of an encryptor tunnel"
                          },
                          "destination": {
                            "type": "string",
                            "example": "2.2.2.2",
                            "description": "Destination IP address of an encryptor tunnel"
                          }
                        },
                        "title": "EncryptorTunnel"
                      }
                    },
                    "subnets": {
                      "type": "array",
                      "description": "Subnets to route to the high site, in addition to the source addresses of tunnels on the `siteConnection` gateway device",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "title": "Encryptor"
                }
              }
            },
            "title": "EncryptorList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putEncryptorsUsingPUT"
      },
      "task": true
    },
    {
      "name": "getEncryptorUsingGET",
      "summary": "Gets an encryptor",
      "description": "Gets an encryptor",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEncryptorUsingGET"
      },
      "task": true
    },
    {
      "name": "putEncryptorUsingPUT",
      "summary": "Adds or replaces an encryptor",
      "description": "Adds or replaces an encryptor",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "encryptor",
          "type": "object",
          "info": "encryptor: {\"name\": \"string\", \"siteConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"underlayConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"tunnels\": [{\"source\": \"string\", \"destination\": \"string\"}], \"subnets\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "name",
              "siteConnection",
              "tunnels",
              "underlayConnection"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "encryptor"
              },
              "siteConnection": {
                "type": "object",
                "required": [
                  "uplinkPort"
                ],
                "properties": {
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                  }
                },
                "title": "EncryptorConnection"
              },
              "underlayConnection": {
                "type": "object",
                "required": [
                  "uplinkPort"
                ],
                "properties": {
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                  }
                },
                "title": "EncryptorConnection"
              },
              "tunnels": {
                "type": "array",
                "description": "Tunnels to other encryptor devices. A tunnel source address is modeled as residing on this device and the destination addresses on another encryptor device. A source address may be reused on an encryptor. Each destination address must match the source address of the tunnel on another encryptor, and vice-versa",
                "items": {
                  "type": "object",
                  "required": [
                    "destination",
                    "source"
                  ],
                  "properties": {
                    "source": {
                      "type": "string",
                      "example": "1.1.1.1",
                      "description": "Source IP address of an encryptor tunnel"
                    },
                    "destination": {
                      "type": "string",
                      "example": "2.2.2.2",
                      "description": "Destination IP address of an encryptor tunnel"
                    }
                  },
                  "title": "EncryptorTunnel"
                }
              },
              "subnets": {
                "type": "array",
                "description": "Subnets to route to the high site, in addition to the source addresses of tunnels on the `siteConnection` gateway device",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Encryptor"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putEncryptorUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteEncryptorUsingDELETE",
      "summary": "Removes an encryptor",
      "description": "Removes an encryptor",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteEncryptorUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchEncryptorUsingPATCH",
      "summary": "Updates an encryptor",
      "description": "Updates an encryptor",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"siteConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"underlayConnection\": {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\"}, \"tunnels\": [{\"source\": \"string\", \"destination\": \"string\"}], \"subnets\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "siteConnection": {
                "type": "object",
                "required": [
                  "uplinkPort"
                ],
                "properties": {
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                  }
                },
                "title": "EncryptorConnection"
              },
              "underlayConnection": {
                "type": "object",
                "required": [
                  "uplinkPort"
                ],
                "properties": {
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                  }
                },
                "title": "EncryptorConnection"
              },
              "tunnels": {
                "type": "array",
                "description": "If specified, this list will **replace** all existing tunnels on the encryptor.",
                "items": {
                  "type": "object",
                  "required": [
                    "destination",
                    "source"
                  ],
                  "properties": {
                    "source": {
                      "type": "string",
                      "example": "1.1.1.1",
                      "description": "Source IP address of an encryptor tunnel"
                    },
                    "destination": {
                      "type": "string",
                      "example": "2.2.2.2",
                      "description": "Destination IP address of an encryptor tunnel"
                    }
                  },
                  "title": "EncryptorTunnel"
                }
              },
              "subnets": {
                "type": "array",
                "description": "If specified, this set will **replace** all existing subnets on the encryptor.",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "EncryptorPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchEncryptorUsingPATCH"
      },
      "task": true
    },
    {
      "name": "updateInternetNodeUsingPATCH",
      "summary": "Updates the network’s internet node",
      "description": "Updates the network’s internet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}], \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "connections": {
                "type": "array",
                "description": "If specified, this list will **replace** all existing connections on the internet node.",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "site": {
                      "type": "string",
                      "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
                    }
                  },
                  "title": "InetConnection"
                }
              },
              "name": {
                "type": "string"
              }
            },
            "title": "InternetNodePatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateInternetNodeUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getInternetNodeConnectionsUsingGET",
      "summary": "Gets some internet node connections",
      "description": "Gets some internet node connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": false,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": false,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": false,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": false,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": false,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeConnectionsUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteInternetNodeConnectionsUsingDELETE",
      "summary": "Removes internet node connections",
      "description": "Removes internet node connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": false,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": false,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": false,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": false,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": false,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteInternetNodeConnectionsUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeConnectionsUsingGET",
      "summary": "Gets an intranet node’s connections",
      "description": "Gets an intranet node’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeConnectionsUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteIntranetNodeConnectionsUsingDELETE",
      "summary": "Removes an intranet node’s connections",
      "description": "Removes an intranet node’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIntranetNodeConnectionsUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getL2VpnConnectionsUsingGET",
      "summary": "Gets an L2VPN’s connections",
      "description": "Gets an L2VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "device",
          "type": "string",
          "info": "device: string",
          "required": true,
          "schema": {
            "title": "device",
            "type": "string"
          }
        },
        {
          "name": "port",
          "type": "string",
          "info": "port: string",
          "required": true,
          "schema": {
            "title": "port",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnConnectionsUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteL2VpnConnectionsUsingDELETE",
      "summary": "Removes an L2VPN’s connections",
      "description": "Removes an L2VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "device",
          "type": "string",
          "info": "device: string",
          "required": true,
          "schema": {
            "title": "device",
            "type": "string"
          }
        },
        {
          "name": "port",
          "type": "string",
          "info": "port: string",
          "required": true,
          "schema": {
            "title": "port",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL2VpnConnectionsUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getL2VpnsUsingGETv1",
      "summary": "Gets a network’s L2VPNs",
      "description": "Gets a network’s L2VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnsUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putL2VpnsUsingPUTv1",
      "summary": "Replaces all of a network’s L2VPNs",
      "description": "Replaces all of a network’s L2VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnList",
          "type": "object",
          "info": "l2VpnList: {\"l2Vpns\": [{\"name\": \"string\", \"connections\": [{\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}]}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "l2Vpns"
            ],
            "properties": {
              "l2Vpns": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "connections",
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "l2vpn"
                    },
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "device",
                          "port"
                        ],
                        "properties": {
                          "device": {
                            "type": "string",
                            "description": "The customer edge device."
                          },
                          "port": {
                            "type": "string",
                            "example": "eth1/1",
                            "description": "The physical edge port on the customer edge device."
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100
                          },
                          "name": {
                            "type": "string",
                            "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the customer edge device."
                          }
                        },
                        "title": "L2VpnConnection"
                      }
                    }
                  },
                  "title": "L2Vpn"
                }
              }
            },
            "title": "L2VpnList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL2VpnsUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "getL2VpnUsingGETv1",
      "summary": "Gets an L2VPN",
      "description": "Gets an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putL2VpnUsingPUTv1",
      "summary": "Adds or replaces an L2VPN",
      "description": "Adds or replaces an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "l2Vpn",
          "type": "object",
          "info": "l2Vpn: {\"name\": \"string\", \"connections\": [{\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connections",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "l2vpn"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "device",
                    "port"
                  ],
                  "properties": {
                    "device": {
                      "type": "string",
                      "description": "The customer edge device."
                    },
                    "port": {
                      "type": "string",
                      "example": "eth1/1",
                      "description": "The physical edge port on the customer edge device."
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the customer edge device."
                    }
                  },
                  "title": "L2VpnConnection"
                }
              }
            },
            "title": "L2Vpn"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL2VpnUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "deleteL2VpnUsingDELETEv1",
      "summary": "Removes an L2VPN",
      "description": "Removes an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL2VpnUsingDELETEv1"
      },
      "task": true
    },
    {
      "name": "patchL2VpnUsingPATCHv1",
      "summary": "Updates an L2VPN",
      "description": "Updates an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"connections\": [{\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}], \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "connections": {
                "type": "array",
                "description": "If specified, this list will **replace** all existing connections on the L2 VPN node.",
                "items": {
                  "type": "object",
                  "required": [
                    "device",
                    "port"
                  ],
                  "properties": {
                    "device": {
                      "type": "string",
                      "description": "The customer edge device."
                    },
                    "port": {
                      "type": "string",
                      "example": "eth1/1",
                      "description": "The physical edge port on the customer edge device."
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the customer edge device."
                    }
                  },
                  "title": "L2VpnConnection"
                }
              },
              "name": {
                "type": "string"
              }
            },
            "title": "L2VpnPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL2VpnUsingPATCHv1"
      },
      "task": true
    },
    {
      "name": "addL2VpnConnectionUsingPOSTv1",
      "summary": "Adds a connection to an L2VPN",
      "description": "Adds a connection to an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "device",
              "port"
            ],
            "properties": {
              "device": {
                "type": "string",
                "description": "The customer edge device."
              },
              "port": {
                "type": "string",
                "example": "eth1/1",
                "description": "The physical edge port on the customer edge device."
              },
              "vlan": {
                "type": "number",
                "example": 100
              },
              "name": {
                "type": "string",
                "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the customer edge device."
              }
            },
            "title": "L2VpnConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL2VpnConnectionUsingPOSTv1"
      },
      "task": true
    },
    {
      "name": "getL3VpnConnectionsUsingGET",
      "summary": "Gets an L3VPN’s connections",
      "description": "Gets an L3VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnConnectionsUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteL3VpnConnectionsUsingDELETE",
      "summary": "Removes an L3VPN’s connections",
      "description": "Removes an L3VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3VpnConnectionsUsingDELETE"
      },
      "task": true
    },
    {
      "name": "getL3VpnsUsingGETv1",
      "summary": "Gets a network’s L3VPNs",
      "description": "Gets a network’s L3VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnsUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putL3VpnsUsingPUTv1",
      "summary": "Replaces all of a network’s L3VPNs",
      "description": "Replaces all of a network’s L3VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnList",
          "type": "object",
          "info": "l3VpnList: {\"l3Vpns\": [{\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vrf\": \"string\", \"vlan\": 123, \"name\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "l3Vpns"
            ],
            "properties": {
              "l3Vpns": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "connections",
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "l3vpn"
                    },
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "uplinkPort"
                        ],
                        "properties": {
                          "uplinkPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "gatewayPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "vrf": {
                            "type": "string",
                            "description": "An optional name for the VRF on the synthetic L3VPN device under which this connection resides."
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100,
                            "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                          },
                          "name": {
                            "type": "string",
                            "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                          },
                          "subnets": {
                            "type": "array",
                            "example": [
                              "123.223.47.0/24"
                            ],
                            "description": "Advertised subnets. Routes for these subnets are created on the L3VPN if received by another CE. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "subnetAutoDiscovery": {
                            "type": "string",
                            "example": "NONE",
                            "description": "The types of routes from which advertised subnets are automatically inferred in the gateway device’s routing table. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port’s IP address is used. If `IP_ROUTES`, subnets are inferred from the gateway device’s RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device’s Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the L3VPN for both autodiscovered subnets, as well any subnets specified in `subnets`, that are received by another CE.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                            "enum": [
                              "NONE",
                              "IP_ROUTES",
                              "BGP_ROUTES",
                              "INTERFACE_ADDRESSES"
                            ]
                          },
                          "peerIps": {
                            "type": "array",
                            "example": [
                              "1.1.1.1"
                            ],
                            "description": "IP addresses of the provider edge devices to which this connection's edge device sends and receives L3VPN routes. If empty, routes advertised to all BGP peers are examined.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "backdoorLinkPorts": {
                            "type": "array",
                            "description": "L3 interfaces that provide backdoor connectivity between sites.",
                            "items": {
                              "type": "object",
                              "properties": {
                                "device": {
                                  "type": "string"
                                },
                                "port": {
                                  "type": "string"
                                }
                              },
                              "title": "DevicePort"
                            }
                          },
                          "advertisesDefaultRoute": {
                            "type": "boolean",
                            "description": "Whether the CE advertises the default route. Defaults to `false`.\n\nNote: This property is only used if BGP collection is not enabled on the CE. If the Adj-RIB-Out is not collected, the RIB is examined and a default route forwarded out `port` is skipped if this property is false."
                          }
                        },
                        "title": "L3VpnConnection"
                      }
                    }
                  },
                  "title": "L3Vpn"
                }
              }
            },
            "title": "L3VpnList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL3VpnsUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "getL3VpnUsingGETv1",
      "summary": "Gets an L3VPN",
      "description": "Gets an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putL3VpnUsingPUTv1",
      "summary": "Adds or replaces an L3VPN",
      "description": "Adds or replaces an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "l3Vpn",
          "type": "object",
          "info": "l3Vpn: {\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vrf\": \"string\", \"vlan\": 123, \"name\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connections",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "l3vpn"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vrf": {
                      "type": "string",
                      "description": "An optional name for the VRF on the synthetic L3VPN device under which this connection resides."
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Advertised subnets. Routes for these subnets are created on the L3VPN if received by another CE. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The types of routes from which advertised subnets are automatically inferred in the gateway device’s routing table. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port’s IP address is used. If `IP_ROUTES`, subnets are inferred from the gateway device’s RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device’s Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the L3VPN for both autodiscovered subnets, as well any subnets specified in `subnets`, that are received by another CE.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of the provider edge devices to which this connection's edge device sends and receives L3VPN routes. If empty, routes advertised to all BGP peers are examined.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether the CE advertises the default route. Defaults to `false`.\n\nNote: This property is only used if BGP collection is not enabled on the CE. If the Adj-RIB-Out is not collected, the RIB is examined and a default route forwarded out `port` is skipped if this property is false."
                    }
                  },
                  "title": "L3VpnConnection"
                }
              }
            },
            "title": "L3Vpn"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putL3VpnUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "deleteL3VpnUsingDELETEv1",
      "summary": "Removes an L3VPN",
      "description": "Removes an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3VpnUsingDELETEv1"
      },
      "task": true
    },
    {
      "name": "patchL3VpnUsingPATCHv1",
      "summary": "Updates an L3VPN",
      "description": "Updates an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vrf\": \"string\", \"vlan\": 123, \"name\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "connections": {
                "type": "array",
                "description": "If specified, this list will **replace** all existing connections on the L3 VPN node.",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vrf": {
                      "type": "string",
                      "description": "An optional name for the VRF on the synthetic L3VPN device under which this connection resides."
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Advertised subnets. Routes for these subnets are created on the L3VPN if received by another CE. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The types of routes from which advertised subnets are automatically inferred in the gateway device’s routing table. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port’s IP address is used. If `IP_ROUTES`, subnets are inferred from the gateway device’s RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device’s Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the L3VPN for both autodiscovered subnets, as well any subnets specified in `subnets`, that are received by another CE.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of the provider edge devices to which this connection's edge device sends and receives L3VPN routes. If empty, routes advertised to all BGP peers are examined.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether the CE advertises the default route. Defaults to `false`.\n\nNote: This property is only used if BGP collection is not enabled on the CE. If the Adj-RIB-Out is not collected, the RIB is examined and a default route forwarded out `port` is skipped if this property is false."
                    }
                  },
                  "title": "L3VpnConnection"
                }
              }
            },
            "title": "L3VpnPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3VpnUsingPATCHv1"
      },
      "task": true
    },
    {
      "name": "addL3VpnConnectionUsingPOSTv1",
      "summary": "Adds a connection to an L3VPN",
      "description": "Adds a connection to an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vrf\": \"string\", \"vlan\": 123, \"name\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "uplinkPort"
            ],
            "properties": {
              "uplinkPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "gatewayPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "vrf": {
                "type": "string",
                "description": "An optional name for the VRF on the synthetic L3VPN device under which this connection resides."
              },
              "vlan": {
                "type": "number",
                "example": 100,
                "description": "The VLAN of traffic from `uplinkPort`, if tagged."
              },
              "name": {
                "type": "string",
                "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
              },
              "subnets": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "description": "Advertised subnets. Routes for these subnets are created on the L3VPN if received by another CE. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                "items": {
                  "type": "string"
                }
              },
              "subnetAutoDiscovery": {
                "type": "string",
                "example": "NONE",
                "description": "The types of routes from which advertised subnets are automatically inferred in the gateway device’s routing table. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port’s IP address is used. If `IP_ROUTES`, subnets are inferred from the gateway device’s RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device’s Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the L3VPN for both autodiscovered subnets, as well any subnets specified in `subnets`, that are received by another CE.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                "enum": [
                  "NONE",
                  "IP_ROUTES",
                  "BGP_ROUTES",
                  "INTERFACE_ADDRESSES"
                ]
              },
              "peerIps": {
                "type": "array",
                "example": [
                  "1.1.1.1"
                ],
                "description": "IP addresses of the provider edge devices to which this connection's edge device sends and receives L3VPN routes. If empty, routes advertised to all BGP peers are examined.",
                "items": {
                  "type": "string"
                }
              },
              "backdoorLinkPorts": {
                "type": "array",
                "description": "L3 interfaces that provide backdoor connectivity between sites.",
                "items": {
                  "type": "object",
                  "properties": {
                    "device": {
                      "type": "string"
                    },
                    "port": {
                      "type": "string"
                    }
                  },
                  "title": "DevicePort"
                }
              },
              "advertisesDefaultRoute": {
                "type": "boolean",
                "description": "Whether the CE advertises the default route. Defaults to `false`.\n\nNote: This property is only used if BGP collection is not enabled on the CE. If the Adj-RIB-Out is not collected, the RIB is examined and a default route forwarded out `port` is skipped if this property is false."
              }
            },
            "title": "L3VpnConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL3VpnConnectionUsingPOSTv1"
      },
      "task": true
    },
    {
      "name": "getInternetNodeUsingGETv1",
      "summary": "Gets the network’s internet node",
      "description": "Gets the network’s internet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putInternetNodeUsingPUTv1",
      "summary": "Replaces the network’s internet node",
      "description": "Replaces the network’s internet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "internetNode",
          "type": "object",
          "info": "internetNode: {\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connections",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "inet"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "site": {
                      "type": "string",
                      "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
                    }
                  },
                  "title": "InetConnection"
                }
              }
            },
            "title": "InternetNode"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putInternetNodeUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "addInternetNodeConnectionUsingPOSTv1",
      "summary": "Adds a connection to the internet node",
      "description": "Adds a connection to the internet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "uplinkPort"
            ],
            "properties": {
              "uplinkPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "gatewayPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "vlan": {
                "type": "number",
                "example": 100,
                "description": "The VLAN of traffic from `uplinkPort`, if tagged."
              },
              "name": {
                "type": "string",
                "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
              },
              "site": {
                "type": "string",
                "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
              },
              "subnets": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                "items": {
                  "type": "string"
                }
              },
              "subnetAutoDiscovery": {
                "type": "string",
                "example": "NONE",
                "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                "enum": [
                  "NONE",
                  "IP_ROUTES",
                  "BGP_ROUTES",
                  "INTERFACE_ADDRESSES"
                ]
              },
              "peerIps": {
                "type": "array",
                "example": [
                  "1.1.1.1"
                ],
                "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                "items": {
                  "type": "string"
                }
              },
              "backdoorLinkPorts": {
                "type": "array",
                "description": "L3 interfaces that provide backdoor connectivity between sites.",
                "items": {
                  "type": "object",
                  "properties": {
                    "device": {
                      "type": "string"
                    },
                    "port": {
                      "type": "string"
                    }
                  },
                  "title": "DevicePort"
                }
              },
              "advertisesDefaultRoute": {
                "type": "boolean",
                "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
              }
            },
            "title": "InetConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addInternetNodeConnectionUsingPOSTv1"
      },
      "task": true
    },
    {
      "name": "getIntranetNodesUsingGETv1",
      "summary": "Gets a network’s intranet nodes",
      "description": "Gets a network’s intranet nodes",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodesUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putIntranetNodesUsingPUTv1",
      "summary": "Replaces all of a network’s intranet nodes",
      "description": "Replaces all of a network’s intranet nodes",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "intranetNodeList",
          "type": "object",
          "info": "intranetNodeList: {\"intranetNodes\": [{\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "intranetNodes"
            ],
            "properties": {
              "intranetNodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "connections",
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "inet"
                    },
                    "connections": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "uplinkPort"
                        ],
                        "properties": {
                          "uplinkPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "gatewayPort": {
                            "type": "object",
                            "properties": {
                              "device": {
                                "type": "string"
                              },
                              "port": {
                                "type": "string"
                              }
                            },
                            "title": "DevicePort"
                          },
                          "vlan": {
                            "type": "number",
                            "example": 100,
                            "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                          },
                          "name": {
                            "type": "string",
                            "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                          },
                          "site": {
                            "type": "string",
                            "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
                          },
                          "subnets": {
                            "type": "array",
                            "example": [
                              "123.223.47.0/24"
                            ],
                            "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "subnetAutoDiscovery": {
                            "type": "string",
                            "example": "NONE",
                            "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                            "enum": [
                              "NONE",
                              "IP_ROUTES",
                              "BGP_ROUTES",
                              "INTERFACE_ADDRESSES"
                            ]
                          },
                          "peerIps": {
                            "type": "array",
                            "example": [
                              "1.1.1.1"
                            ],
                            "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                            "items": {
                              "type": "string"
                            }
                          },
                          "backdoorLinkPorts": {
                            "type": "array",
                            "description": "L3 interfaces that provide backdoor connectivity between sites.",
                            "items": {
                              "type": "object",
                              "properties": {
                                "device": {
                                  "type": "string"
                                },
                                "port": {
                                  "type": "string"
                                }
                              },
                              "title": "DevicePort"
                            }
                          },
                          "advertisesDefaultRoute": {
                            "type": "boolean",
                            "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
                          }
                        },
                        "title": "InetConnection"
                      }
                    }
                  },
                  "title": "IntranetNode"
                }
              }
            },
            "title": "IntranetNodeList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putIntranetNodesUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeUsingGETv1",
      "summary": "Gets an intranet node",
      "description": "Gets an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putIntranetNodeUsingPUTv1",
      "summary": "Adds or replaces an intranet node",
      "description": "Adds or replaces an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "intranetNode",
          "type": "object",
          "info": "intranetNode: {\"name\": \"string\", \"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}]}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connections",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "inet"
              },
              "connections": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "site": {
                      "type": "string",
                      "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
                    }
                  },
                  "title": "InetConnection"
                }
              }
            },
            "title": "IntranetNode"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putIntranetNodeUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "deleteIntranetNodeUsingDELETEv1",
      "summary": "Removes an intranet node",
      "description": "Removes an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIntranetNodeUsingDELETEv1"
      },
      "task": true
    },
    {
      "name": "patchIntranetNodeUsingPATCHv1",
      "summary": "Updates an intranet node",
      "description": "Updates an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"connections\": [{\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}], \"name\": \"string\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "connections": {
                "type": "array",
                "description": "If specified, this list will **replace** all existing connections on the intranet node.",
                "items": {
                  "type": "object",
                  "required": [
                    "uplinkPort"
                  ],
                  "properties": {
                    "uplinkPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "gatewayPort": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "DevicePort"
                    },
                    "vlan": {
                      "type": "number",
                      "example": 100,
                      "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                    },
                    "name": {
                      "type": "string",
                      "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
                    },
                    "site": {
                      "type": "string",
                      "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
                    },
                    "subnets": {
                      "type": "array",
                      "example": [
                        "123.223.47.0/24"
                      ],
                      "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "subnetAutoDiscovery": {
                      "type": "string",
                      "example": "NONE",
                      "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                      "enum": [
                        "NONE",
                        "IP_ROUTES",
                        "BGP_ROUTES",
                        "INTERFACE_ADDRESSES"
                      ]
                    },
                    "peerIps": {
                      "type": "array",
                      "example": [
                        "1.1.1.1"
                      ],
                      "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "backdoorLinkPorts": {
                      "type": "array",
                      "description": "L3 interfaces that provide backdoor connectivity between sites.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "device": {
                            "type": "string"
                          },
                          "port": {
                            "type": "string"
                          }
                        },
                        "title": "DevicePort"
                      }
                    },
                    "advertisesDefaultRoute": {
                      "type": "boolean",
                      "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
                    }
                  },
                  "title": "InetConnection"
                }
              },
              "name": {
                "type": "string"
              }
            },
            "title": "IntranetNodePatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchIntranetNodeUsingPATCHv1"
      },
      "task": true
    },
    {
      "name": "addIntranetNodeConnectionUsingPOSTv1",
      "summary": "Adds a connection to an intranet node",
      "description": "Adds a connection to an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "connection",
          "type": "object",
          "info": "connection: {\"uplinkPort\": {\"device\": \"string\", \"port\": \"string\"}, \"gatewayPort\": {\"device\": \"string\", \"port\": \"string\"}, \"vlan\": 123, \"name\": \"string\", \"site\": \"string\", \"subnets\": \"array\", \"subnetAutoDiscovery\": \"Must be one of [NONE, IP_ROUTES, BGP_ROUTES, INTERFACE_ADDRESSES]\", \"peerIps\": \"array\", \"backdoorLinkPorts\": [{\"device\": \"string\", \"port\": \"string\"}], \"advertisesDefaultRoute\": \"boolean\"}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "uplinkPort"
            ],
            "properties": {
              "uplinkPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "gatewayPort": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "DevicePort"
              },
              "vlan": {
                "type": "number",
                "example": 100,
                "description": "The VLAN of traffic from `uplinkPort`, if tagged."
              },
              "name": {
                "type": "string",
                "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the physical edge port."
              },
              "site": {
                "type": "string",
                "description": "An optional name for the site in which this connection's gateway device resides. A site is a collection of devices that redistribute routes learned from an internet or intranet to each other. Grouping connections together into a single site enables more accurate site subnet autodiscovery when using `IP_ROUTES` or `BGP_ROUTES`."
              },
              "subnets": {
                "type": "array",
                "example": [
                  "123.223.47.0/24"
                ],
                "description": "Site subnets. Routes for these subnets are always created on the node. Required (and must not be empty) if `subnetAutoDiscovery` is `NONE`.",
                "items": {
                  "type": "string"
                }
              },
              "subnetAutoDiscovery": {
                "type": "string",
                "example": "NONE",
                "description": "The source from which site subnets are automatically inferred from the gateway device. Defaults to `NONE`. If `INTERFACE_ADDRESSES`, the gateway port's IP address is used as this connection's site subnet. If `IP_ROUTES`, subnets are inferred from the gateway device's RIB. If `BGP_ROUTES`, subnets are inferred from the gateway device's Adj-RIB-Out.\n\nNote: If not `NONE`, routes are created on the node for both autodiscovered subnets and any subnets specified in `subnets`.\n\nNote: Using `BGP_ROUTES` will automatically enable collection of Adj-RIB-Out from the gateway device in future network collections.",
                "enum": [
                  "NONE",
                  "IP_ROUTES",
                  "BGP_ROUTES",
                  "INTERFACE_ADDRESSES"
                ]
              },
              "peerIps": {
                "type": "array",
                "example": [
                  "1.1.1.1"
                ],
                "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                "items": {
                  "type": "string"
                }
              },
              "backdoorLinkPorts": {
                "type": "array",
                "description": "L3 interfaces that provide backdoor connectivity between sites.",
                "items": {
                  "type": "object",
                  "properties": {
                    "device": {
                      "type": "string"
                    },
                    "port": {
                      "type": "string"
                    }
                  },
                  "title": "DevicePort"
                }
              },
              "advertisesDefaultRoute": {
                "type": "boolean",
                "description": "Whether this connection's gateway device advertises the default route. Defaults to `false`.\n\nNote: This property is only used if `subnetAutoDiscovery` is `IP_ROUTES` or `BGP_ROUTES`."
              }
            },
            "title": "InetConnection"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addIntranetNodeConnectionUsingPOSTv1"
      },
      "task": true
    },
    {
      "name": "getWanCircuitsUsingGETv1",
      "summary": "Gets a network’s WAN circuits",
      "description": "Gets a network’s WAN circuits",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitsUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putWanCircuitsUsingPUTv1",
      "summary": "Replaces all of a network’s WAN circuits",
      "description": "Replaces all of a network’s WAN circuits",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitList",
          "type": "object",
          "info": "wanCircuitList: {\"wanCircuits\": [{\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "wanCircuits": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "connection1",
                    "connection2",
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "example": "wan-circuit-01"
                    },
                    "connection1": {
                      "type": "object",
                      "required": [
                        "device",
                        "port"
                      ],
                      "properties": {
                        "device": {
                          "type": "string",
                          "description": "A customer edge device name"
                        },
                        "port": {
                          "type": "string",
                          "description": "The name of the connected port on `device`"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `port`, if tagged"
                        },
                        "name": {
                          "type": "string",
                          "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                        }
                      },
                      "title": "WanCircuitConnection"
                    },
                    "connection2": {
                      "type": "object",
                      "required": [
                        "device",
                        "port"
                      ],
                      "properties": {
                        "device": {
                          "type": "string",
                          "description": "A customer edge device name"
                        },
                        "port": {
                          "type": "string",
                          "description": "The name of the connected port on `device`"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `port`, if tagged"
                        },
                        "name": {
                          "type": "string",
                          "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                        }
                      },
                      "title": "WanCircuitConnection"
                    }
                  },
                  "title": "WanCircuit"
                }
              }
            },
            "title": "WanCircuitList"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putWanCircuitsUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "getWanCircuitUsingGETv1",
      "summary": "Gets a WAN circuit",
      "description": "Gets a WAN circuit",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitUsingGETv1"
      },
      "task": true
    },
    {
      "name": "putWanCircuitUsingPUTv1",
      "summary": "Adds or replaces a WAN circuit",
      "description": "Adds or replaces a WAN circuit",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "wanCircuit",
          "type": "object",
          "info": "wanCircuit: {\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "required": [
              "connection1",
              "connection2",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "wan-circuit-01"
              },
              "connection1": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                  }
                },
                "title": "WanCircuitConnection"
              },
              "connection2": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                  }
                },
                "title": "WanCircuitConnection"
              }
            },
            "title": "WanCircuit"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putWanCircuitUsingPUTv1"
      },
      "task": true
    },
    {
      "name": "deleteWanCircuitUsingDELETEv1",
      "summary": "Removes a WAN circuit",
      "description": "Removes a WAN circuit",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteWanCircuitUsingDELETEv1"
      },
      "task": true
    },
    {
      "name": "patchWanCircuitUsingPATCHv1",
      "summary": "Updates a WAN circuit",
      "description": "Updates a WAN circuit",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "patch",
          "type": "object",
          "info": "patch: {\"name\": \"string\", \"connection1\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}, \"connection2\": {\"device\": \"string\", \"port\": \"string\", \"vlan\": 123, \"name\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "wan-circuit-01"
              },
              "connection1": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                  }
                },
                "title": "WanCircuitConnection"
              },
              "connection2": {
                "type": "object",
                "required": [
                  "device",
                  "port"
                ],
                "properties": {
                  "device": {
                    "type": "string",
                    "description": "A customer edge device name"
                  },
                  "port": {
                    "type": "string",
                    "description": "The name of the connected port on `device`"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `port`, if tagged"
                  },
                  "name": {
                    "type": "string",
                    "description": "An optional name for this connection, which will be used as the interface name created on the synthetic device that links to the edge device."
                  }
                },
                "title": "WanCircuitConnection"
              }
            },
            "title": "WanCircuitPatch"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchWanCircuitUsingPATCHv1"
      },
      "task": true
    },
    {
      "name": "getNetworksUsingGETQuery",
      "summary": "Lists all networks",
      "description": "Lists all networks",
      "input": [
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creatorId": {
                "type": "string"
              },
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "orgId": {
                "type": "string"
              }
            },
            "title": "Network"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getNetworksUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getCollectorStateUsingGETQuery",
      "summary": "Gets the status of a network’s collector",
      "description": "Gets the status of a network’s collector",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "busyStatus": {
              "type": "string"
            },
            "hasDevicesConfigured": {
              "type": "boolean"
            },
            "isIdle": {
              "type": "boolean"
            },
            "isOnline": {
              "type": "boolean"
            },
            "isSet": {
              "type": "boolean"
            }
          },
          "title": "CollectorState"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectorStateUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceCredentialsUsingGETQuery",
      "summary": "Lists a network’s device credentials",
      "description": "Omits the sensitive properties `password` and `content`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "name",
              "password",
              "type"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a163",
                "description": "auto-generated if not provided"
              },
              "type": {
                "type": "string",
                "example": "LOGIN"
              },
              "name": {
                "type": "string",
                "example": "admin (sjc)",
                "description": "for display purposes in the application"
              },
              "username": {
                "type": "string",
                "example": "admin",
                "description": "required for `LOGIN` and `SHELL` types"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "content": {
                "type": "string",
                "example": "MIIPIQIBAzCCDtoGCSqGSIb3DQEHAa...",
                "description": "base64-encoded [collector.jks](/docs/getting_started/forward_collector/advanced_configuration/openflow_ssl/) for `KEY_STORE` type"
              }
            },
            "title": "DeviceCredential"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceCredentialsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceSourcesUsingGETQuery",
      "summary": "Gets a network’s device sources",
      "description": "Gets a network’s device sources",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "host",
              "name",
              "type"
            ],
            "properties": {
              "collectBgpAdvertisements": {
                "type": "boolean",
                "example": false
              },
              "disableCollection": {
                "type": "boolean",
                "example": false
              },
              "fullCollectionLog": {
                "type": "boolean",
                "example": false
              },
              "host": {
                "type": "string",
                "example": "10.121.7.13"
              },
              "jumpServerId": {
                "type": "string",
                "example": "my-sjc-jump-server"
              },
              "keyStoreId": {
                "type": "string",
                "example": "my-tls-key-store"
              },
              "largeRtt": {
                "type": "boolean",
                "example": false
              },
              "loginCredentialId": {
                "type": "string",
                "example": "my-checkpoint-credentials"
              },
              "name": {
                "type": "string",
                "example": "my_router"
              },
              "paginationMode": {
                "type": "string",
                "example": "DISABLE_PAGINATION"
              },
              "port": {
                "type": "number",
                "example": 22
              },
              "privilegedModePasswordId": {
                "type": "string",
                "example": "privileged_mode_password_3"
              },
              "shellCredentialId": {
                "type": "string",
                "example": "my_avi_shell_cred"
              },
              "type": {
                "type": "string",
                "example": "checkpoint_ssh"
              },
              "openFlow": {
                "type": "object",
                "properties": {
                  "port": {
                    "type": "number",
                    "example": 6653
                  }
                },
                "title": "OpenFlowConfig"
              }
            },
            "title": "DeviceSource"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceSourcesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getJumpServersUsingGETQuery",
      "summary": "Lists a network’s jump servers",
      "description": "Omits the sensitive `password` property.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "host",
              "password",
              "username"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "8c4a168e-c6ca-4978-bcc9-c0ec7f64a164",
                "description": "auto-generated if not provided"
              },
              "host": {
                "type": "string",
                "example": "10.121.7.14"
              },
              "port": {
                "type": "number",
                "example": 23,
                "description": "defaults to 22"
              },
              "username": {
                "type": "string",
                "example": "admin"
              },
              "password": {
                "type": "string",
                "example": "my-s3cr3t-p4s$w0rd"
              },
              "supportsPortForwarding": {
                "type": "boolean",
                "example": false,
                "description": "defaults to true"
              }
            },
            "title": "JumpServer"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getJumpServersUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getNetworkLayoutUsingGETQuery",
      "summary": "Gets the network layout",
      "description": "Gets the network layout",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "nodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "loopbackDirection": {
                    "type": "number"
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  }
                },
                "title": "DeviceNode"
              }
            }
          },
          "title": "TopologyLayout"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNetworkLayoutUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "listNetworkSnapshotsUsingGETQuery",
      "summary": "Lists all Snapshots",
      "description": "Lists all Snapshots",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creatorId": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "orgId": {
              "type": "string"
            },
            "snapshots": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "creationDateMillis": {
                    "type": "string",
                    "example": 1569001234567
                  },
                  "id": {
                    "type": "string"
                  },
                  "isDraft": {
                    "type": "boolean",
                    "example": false
                  },
                  "name": {
                    "type": "string",
                    "description": "Use `\"note\"` instead. Will be removed in a future release."
                  },
                  "note": {
                    "type": "string"
                  },
                  "parentSnapshotId": {
                    "type": "string"
                  },
                  "processedAtMillis": {
                    "type": "string",
                    "example": 1569003456789
                  },
                  "processingTrigger": {
                    "type": "string"
                  }
                },
                "title": "SnapshotMeta"
              }
            }
          },
          "title": "NetworkSnapshots"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/listNetworkSnapshotsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getLatestProcessedSnapshotUsingGETQuery",
      "summary": "Returns the latest processed Snapshot",
      "description": "Returns the latest processed Snapshot (the most recent one that's currently prepared for [path searches](#path-search) and [new checks](#checks)).\n\nTriggers processing of the latest Snapshot if it's not already underway and the network has no processed Snapshots.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string",
              "example": 1569001234567
            },
            "id": {
              "type": "string"
            },
            "isDraft": {
              "type": "boolean",
              "example": false
            },
            "name": {
              "type": "string",
              "description": "Use `\"note\"` instead. Will be removed in a future release."
            },
            "note": {
              "type": "string"
            },
            "parentSnapshotId": {
              "type": "string"
            },
            "processedAtMillis": {
              "type": "string",
              "example": 1569003456789
            },
            "processingTrigger": {
              "type": "string"
            }
          },
          "title": "SnapshotMeta"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLatestProcessedSnapshotUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "zipSnapshotUsingGETQuery",
      "summary": "Exports a Snapshot",
      "description": "Exports a network Snapshot as a .zip file.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/zipSnapshotUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getSnapshotMetricsUsingGETQuery",
      "summary": "Returns the metrics of a Snapshot",
      "description": "Returns collection and processing health metrics of a Snapshot.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "collectionConcurrency": {
              "type": "number",
              "example": 16
            },
            "collectionDuration": {
              "type": "number",
              "example": 1234
            },
            "collectionFailures": {
              "type": "object",
              "description": "Possible device error types during collection \n*UNKNOWN*: Unknown error\n*CONNECTION_TIMEOUT*: Connection to device timed out\n*CONNECTION_REFUSED*: Connection to device refused\n*AUTHENTICATION_FAILED*: Authentication failed\n*KEY_EXCHANGE_FAILED*: Key exchange failed\n*AUTHORIZATION_FAILED*: Authorization failed\n*AVI_SHELL_AUTH_FAILED*: Avi authentication failed\n*AVI_CONTROLLER_WITHOUT_HEALTHY_SERVICE_ENGINES*: No Avi Service Engines found\n*NETWORK_UNREACHABLE*: Network not reachable\n*IO_ERROR*: I/O error\n*SESSION_CLOSED*: Session closed unexpectedly\n*STATE_COLLECTION_FAILED*: State collection failed\n*JUMP_SERVER_CONNECTION_TIMEOUT*: Jump server timed out\n*JUMP_SERVER_PASSWORD_AUTH_FAILED*: Jump server auth failed\n*JUMP_SERVER_CONNECTION_FAILED*: Jump server connection refused\n*JUMP_SERVER_KEY_EXCHANGE_FAILED*: Jump server key exchange failed\n*PROXY_SERVER_PING_FAILED*: Proxy ping failed\n*PROXY_SERVER_PORT_REACHABILITY_FAILED*: Proxy port not reachable\n*PROXY_SERVER_CONNECTION_FAILED*: Proxy connection refused\n*PROXY_SERVER_AUTHENTICATION_FAILED*: Proxy authentication failed\n*PRIV_PASSWORD_ERROR*: Privileged password failed\n*UNSUPPORTED_VERSION*: Unsupported version\n*DEVICE_TYPE_UNDETECTED*: Undetected device type\n*WARN_TYPE_MISMATCH*: Device type mismatch\n*DEVICE_IS_CHILD_CONTEXT*: Parent context required\n*MANAGER_COLLECTOR_NOT_FOUND*: Collector manager error\n*INCOMPLETE_SETUP*: Incomplete setup\n*COLLECTION_NOT_FOUND*: Collection not found\n*INFINITE_LOOP_IN_COMMAND_OUTPUT*: Collection stuck in loop\n*MISSING_FILE*: File is missing\n*UNSUPPORTED_VENDOR*: Vendor not supported\n*COMMAND_DISABLED*: Required command is disabled\n*APIC_CONFIG_COLLECTION_FAILED*: APIC config collection failed\n*UNEXPECTED_KEY_EXCHANGE_MESSAGE*: Unexpected Key-Exchange message\n*UNDISCOVERED_ACI_FABRIC*: ACI fabric node was not discovered by APIC\n*SLOW_READ_RATE_DETECTED*: Read rate from the remote peer is too low\n*COLLECTION_TIMED_OUT*: Collection timed out\n*COLLECTION_CANCELED*: Collection canceled by user\n*OPERATION_TIMED_OUT*: Operation timed out\n*CERTIFICATE_CHECK_FAILED*: Certificate cannot be verified\n",
              "additionalProperties": {
                "type": "number"
              }
            },
            "creationDateMillis": {
              "type": "string",
              "example": 1234567
            },
            "hostComputationStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "Host computation status"
            },
            "ipLocationIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "IP location indexing status"
            },
            "jumpServerCollectionConcurrency": {
              "type": "number"
            },
            "l2IndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "L2 elements (vlans, LAN segments etc.) indexing status"
            },
            "needsReprocessing": {
              "type": "boolean",
              "description": "Indicates if the Snapshot needs to be reprocessed"
            },
            "numCollectionFailureDevices": {
              "type": "number"
            },
            "numParsingFailureDevices": {
              "type": "number"
            },
            "numSuccessfulDevices": {
              "type": "number",
              "example": 401
            },
            "parsingFailures": {
              "type": "object",
              "description": "Possible error types during processing \n*DEVICE_OVERUSAGE*: License limit exceeded\n*MISSING_SIGNATURE*: Missing signature\n*DUPLICATE*: Duplicate device\n*PARSER_EXCEPTION*: Couldn't be parsed\n*UNSUPPORTED_VENDOR*: Vendor not supported\n",
              "additionalProperties": {
                "type": "number"
              }
            },
            "pathSearchIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "End-to-end path indexing status"
            },
            "processingDuration": {
              "type": "number",
              "example": 5678
            },
            "searchIndexingStatus": {
              "type": "string",
              "example": "SUCCESS",
              "description": "Object search indexing status"
            },
            "snapshotId": {
              "type": "string"
            }
          },
          "title": "SnapshotMetrics"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSnapshotMetricsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getTopologyUsingGETQuery",
      "summary": "Gets the network topology",
      "description": "The links in the response are directed, so they generally appear twice—once for each direction.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "sourcePort": {
                "type": "string"
              },
              "targetPort": {
                "type": "string"
              }
            },
            "title": "TopologyLink"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTopologyUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getSnapshotTopoOverridesUsingGETQuery",
      "summary": "Gets the topology overrides",
      "description": "Gets the topology overrides",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "absent": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "port1": {
                    "type": "string"
                  },
                  "port2": {
                    "type": "string"
                  }
                },
                "title": "Link"
              }
            },
            "present": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "port1": {
                    "type": "string"
                  },
                  "port2": {
                    "type": "string"
                  }
                },
                "title": "Link"
              }
            }
          },
          "title": "LinkOverrides"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSnapshotTopoOverridesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getAvailablePredefinedChecksUsingGETQuery",
      "summary": "Gets available Predefined checks",
      "description": "Gets available Predefined checks",
      "input": [
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "description": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "predefinedCheckType": {
                "type": "string"
              }
            },
            "title": "AvailablePredefinedCheck"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAvailablePredefinedChecksUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getChecksUsingGETQuery",
      "summary": "Gets checks (with status)",
      "description": "Gets checks (with status)",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "array",
          "info": "type: array",
          "required": true,
          "schema": {
            "title": "type",
            "type": "array"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creationDateMillis": {
                "type": "string"
              },
              "creatorId": {
                "type": "string"
              },
              "definition": {
                "type": "object",
                "properties": {
                  "checkType": {
                    "type": "string"
                  }
                },
                "title": "CheckDefinition"
              },
              "definitionDateMillis": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "editDateMillis": {
                "type": "string"
              },
              "editorId": {
                "type": "string"
              },
              "enabled": {
                "type": "boolean"
              },
              "executionDateMillis": {
                "type": "string"
              },
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "note": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "tags": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "NetworkCheckResult"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getChecksUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getSingleCheckUsingGETQuery",
      "summary": "Gets a check (with status)",
      "description": "Gets a check (with status)",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "checkId",
          "type": "string",
          "info": "checkId: string",
          "required": true,
          "schema": {
            "title": "checkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationDateMillis": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "definition": {
              "type": "object",
              "properties": {
                "checkType": {
                  "type": "string"
                }
              },
              "title": "CheckDefinition"
            },
            "definitionDateMillis": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "diagnosis": {
              "type": "object",
              "properties": {
                "details": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "query": {
                        "type": "string"
                      },
                      "references": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "files": {
                              "type": "object",
                              "description": ""
                            },
                            "key": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            }
                          },
                          "title": "DiagnosisReference"
                        }
                      }
                    },
                    "title": "DiagnosisDetail"
                  }
                },
                "detailsIncomplete": {
                  "type": "boolean"
                },
                "summary": {
                  "type": "string"
                }
              },
              "title": "CheckDiagnosis"
            },
            "editDateMillis": {
              "type": "string"
            },
            "editorId": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "executionDateMillis": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "note": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "tags": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "title": "NetworkCheckResultWithDiagnosis"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSingleCheckUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getAllAliasesUsingGETQuery",
      "summary": "Gets all Aliases",
      "description": "Gets all Aliases",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "aliases": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "creationTime": {
                    "type": "string"
                  },
                  "creatorId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "title": "Alias"
              }
            }
          },
          "title": "AllAliases"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getAllAliasesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getSingleAliasUsingGETQuery",
      "summary": "Gets an Alias",
      "description": "Gets an Alias",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "name: string",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "creationTime": {
              "type": "string"
            },
            "creatorId": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string"
            }
          },
          "title": "AliasAndValue"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSingleAliasUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceFilesUsingGETQuery",
      "summary": "Lists a device’s data files",
      "description": "Lists a device’s data files",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "files": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "configuration.txt"
                  },
                  "bytes": {
                    "type": "number",
                    "example": 1234
                  }
                },
                "title": "DeviceFile"
              }
            }
          },
          "title": "DeviceFiles"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFilesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceFileContentUsingGETQuery",
      "summary": "Gets device data file content",
      "description": "Most device data files are text files. Some are binary. A file’s extension indicates its type.\n\nFor convenience, the .txt file extension is optional (can be omitted).",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "fileName",
          "type": "string",
          "info": "fileName: string",
          "required": true,
          "schema": {
            "title": "fileName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFileContentUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL2VpnsUsingGETQuery",
      "summary": "Gets a network’s L2VPNs",
      "description": "Gets a network’s L2VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l2Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "port": {
                          "type": "string"
                        }
                      },
                      "title": "L2VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L2Vpn"
              }
            }
          },
          "title": "L2VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL2VpnUsingGETQuery",
      "summary": "Gets an L2VPN",
      "description": "Gets an L2VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "port": {
                    "type": "string"
                  }
                },
                "title": "L2VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L2Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL3VpnsUsingGETQuery",
      "summary": "Gets a network’s L3VPNs",
      "description": "Gets a network’s L3VPNs",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "l3Vpns": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "device": {
                          "type": "string"
                        },
                        "port": {
                          "type": "string"
                        },
                        "providerEdgeIp": {
                          "type": "string",
                          "example": "1.1.1.1"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100
                        },
                        "vrf": {
                          "type": "string"
                        }
                      },
                      "title": "L3VpnConnection"
                    }
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "title": "L3Vpn"
              }
            }
          },
          "title": "L3VpnList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL3VpnUsingGETQuery",
      "summary": "Gets an L3VPN",
      "description": "Gets an L3VPN",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string"
                  },
                  "port": {
                    "type": "string"
                  },
                  "providerEdgeIp": {
                    "type": "string",
                    "example": "1.1.1.1"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100
                  },
                  "vrf": {
                    "type": "string"
                  }
                },
                "title": "L3VpnConnection"
              }
            },
            "name": {
              "type": "string"
            }
          },
          "title": "L3Vpn"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getPathsBySnapshotUsingGET",
      "summary": "Searches for paths by tracing packets through the network",
      "description": "Searches for paths by tracing packets through the network",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "srcIp",
          "type": "string",
          "info": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "srcIp",
            "type": "string"
          }
        },
        {
          "name": "dstIp",
          "type": "string",
          "info": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "dstIp",
            "type": "string"
          }
        },
        {
          "name": "intent",
          "type": "string",
          "info": "Specifies the intent for the search. Default PREFER_DELIVERED.\n*PREFER_VIOLATIONS*: Prefer paths that result in the traffic not getting delivered, e.g. drops, blackholes,...(description truncated): Must be one of [PREFER_VIOLATIONS, PREFER_DELIVERED, VIOLATIONS_ONLY, SINGLE_BEST]",
          "required": false,
          "schema": {
            "title": "intent",
            "type": "string"
          }
        },
        {
          "name": "ipProto",
          "type": "number",
          "info": "the IP protocol: 123",
          "required": false,
          "schema": {
            "title": "ipProto",
            "type": "number"
          }
        },
        {
          "name": "srcPort",
          "type": "string",
          "info": "the L4 source port, like \"80\" or a range \"8080-8088\": string",
          "required": false,
          "schema": {
            "title": "srcPort",
            "type": "string"
          }
        },
        {
          "name": "dstPort",
          "type": "string",
          "info": "the L4 destination port, like \"80\" or a range \"8080-8088\": string",
          "required": false,
          "schema": {
            "title": "dstPort",
            "type": "string"
          }
        },
        {
          "name": "icmpType",
          "type": "number",
          "info": "the ICMP type. Can be specified only when ipProto = 1.: 123",
          "required": false,
          "schema": {
            "title": "icmpType",
            "type": "number"
          }
        },
        {
          "name": "includeNetworkFunctions",
          "type": "boolean",
          "info": "If true, the response includes detailed forwarding info for each hop.\nNote: Setting this to true increases the API response time.: boolean",
          "required": false,
          "schema": {
            "title": "includeNetworkFunctions",
            "type": "boolean"
          }
        },
        {
          "name": "maxCandidates",
          "type": "number",
          "info": "the limit on the number of search results computed, before applying any ranking criteria. Permitted range = 1 to 10,000. Default 5,000.: 123",
          "required": false,
          "schema": {
            "title": "maxCandidates",
            "type": "number"
          }
        },
        {
          "name": "maxResults",
          "type": "number",
          "info": "the limit on the number of search results returned by the API. First, the platform computes up to maxCandidates results that match the search criteria. Then they are sort...(description truncated): 123",
          "required": false,
          "schema": {
            "title": "maxResults",
            "type": "number"
          }
        },
        {
          "name": "maxReturnPathResults",
          "type": "number",
          "info": "the limit on the number of return path search results. Permitted range = 0 to 10,000. Default 0. Multicast (*, G) and (S, G) queries will always return 0 return path resu...(description truncated): 123",
          "required": false,
          "schema": {
            "title": "maxReturnPathResults",
            "type": "number"
          }
        },
        {
          "name": "maxSeconds",
          "type": "number",
          "info": "the timeout duration. Permitted range = 1 to 600. Default 30.: 123",
          "required": false,
          "schema": {
            "title": "maxSeconds",
            "type": "number"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "srcIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for source IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address. This discovery method is used to locate the rendezvous points of the multicast group and use their IP addresses as IP source."
            },
            "dstIpLocationType": {
              "type": "string",
              "description": "Specifies the location discovery method for destination IP.\nThe enum values are ordered from most precise to least precise discovery method.\n*HOST*: The IP corresponds to discovered host(s).\n*INTERFACE*: The IP is a configured IP address of one or more device interfaces.\n*INTERFACE_ATTACHED_SUBNET*: The IP falls within the attached subnet of L3 interface(s).\n*NAT*: The IP gets NAT'd in the network. The IP may either correspond directly to a VIP on a load balancer or a NAT'd IP on other devices such as routers. This discovery method is only used to locate destination IP addresses. NAT’d IP addresses are recursively resolved to determine where traffic to a given destination IP must be delivered in the network.\n*INTERNET*: The IP is in the public internet and was located at the network's Internet Node. This discovery method is only applicable when an Internet Node is configured in the network.\n*ROUTE*: The IP was located based on injected routes in the network.\n*MULTICAST*: The IP is a multicast group address."
            },
            "info": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "returnPathInfo": {
              "type": "object",
              "properties": {
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "forwardingOutcome": {
                        "type": "string",
                        "description": "Specifies the traffic forwarding outcome along a path.\n*DELIVERED*: Traffic was delivered to destination IP’s discovered location(s).\n*DELIVERED_TO_INCORRECT_LOCATION*: Traffic was delivered out of some edge ports. However, traffic did not reach the expected delivery locations based on destination IP’s discovered locations. One scenario where this occurs is when a device in the middle of the actual path from source IP to destination IP is not configured for collection in the Forward platform. For example, suppose the actual device path is A -> B -> C, and only devices A and C are part of the snapshot in the Forward platform. In this case, the path would show traffic exiting device A at some edge port, but since destination IP is discovered to reside at device C, traffic is delivered to an incorrect location.\n*BLACKHOLE*: Traffic was implicitly dropped at the last hop, since the device had no matching rule. For example, if a router does not have a default route, traffic to any IP that is not in the routing table gets blackholed.\n*DROPPED*: Traffic was explicitly dropped at the last hop, e.g. by a null route.\n*INADMISSIBLE*: Traffic was not admitted into the network. The first hop interface does not accept the traffic, e.g. incoming traffic had a vlan tag 10 while the ingress interface is an access interface that only permits traffic with vlan tag 20.\n*UNREACHABLE*: ARP/NDP resolution failed along the path resulting in traffic not getting delivered to the intended destination.\n*LOOP*: Traffic entered a forwarding loop."
                      },
                      "securityOutcome": {
                        "type": "string",
                        "description": "Specifies whether traffic is denied by ACL rules at any hop along the path.\n*PERMITTED*: All ACLs along the path permitted traffic to flow through.\n*DENIED*: Traffic was dropped by ACLs at some hop along the path. Note that the ACL drop may not always occur at the last hop since search results are computed in permit all mode."
                      },
                      "hops": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "behaviors": {
                              "type": "array",
                              "description": "Specifies the forwarding behaviors experienced by traffic at the device.\n*L2*: Forwarded at layer 2.\n*L3*: Routed at layer 3.\n*NAT*: NAT transformations applied.\n*PBR*: Forwarded using Policy-Based Routing.\n*ACL_PERMIT*: ACLs were applied to traffic at the device and the traffic was permitted.\n*ACL_DENY*: ACLs were applied to traffic at the device and the traffic was dropped.",
                              "items": {
                                "type": "string"
                              }
                            },
                            "deviceName": {
                              "type": "string"
                            },
                            "deviceType": {
                              "type": "string"
                            },
                            "egressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic exited the device.\nNull if this is the last hop and traffic did not exit the device."
                            },
                            "ingressInterface": {
                              "type": "string",
                              "description": "the physical interface name, where traffic entered the device"
                            },
                            "networkFunctions": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "PathHop"
                        }
                      }
                    },
                    "title": "Path"
                  }
                },
                "totalHits": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Specifies the type of total hits.\n*LOWER_BOUND*: There may be additional hits that were not included in the results either because the requested number of hits were found, or the request timed out.\n*EXACT*: There are exactly this many hits."
                    },
                    "value": {
                      "type": "number"
                    }
                  },
                  "title": "TotalHits",
                  "description": "Number of ways in which traffic matching the search criteria is forwarded in the network. Multiple ECMP path choices for traffic lead to separate results. In addition, depending on the scope of query terms, there might be multiple results along a single path. For example a search without IP protocol or destination port restrictions can result in multiple results along a single device path if there are different ACLs that permit or deny traffic to different destination ports."
                }
              },
              "title": "PathInfo"
            },
            "timedOut": {
              "type": "boolean"
            },
            "queryUrl": {
              "type": "string",
              "description": "A Forward application URL at which this path search can be explored or refined interactively"
            }
          },
          "title": "PathSearchResponse"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathsBySnapshotUsingGET"
      },
      "task": true
    },
    {
      "name": "getPathsByNetworkIdUsingGET",
      "summary": "Searches for paths by tracing packets through the network",
      "description": "Searches for paths by tracing packets through the network",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "srcIp",
          "type": "string",
          "info": "the source IP address or subnet of packets entering the network. For multicast (*, G) paths, set srcIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "srcIp",
            "type": "string"
          }
        },
        {
          "name": "dstIp",
          "type": "string",
          "info": "the destination IP address or subnet of packets entering the network. For multicast (*, G) paths, set dstIp = G (multicast group address).: string",
          "required": true,
          "schema": {
            "title": "dstIp",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathsByNetworkIdUsingGET"
      },
      "task": true
    },
    {
      "name": "getApiVersionUsingGETQuery",
      "summary": "Gets the API’s current version",
      "description": "Gets the API’s current version",
      "input": [
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "version": {
              "type": "string",
              "example": "1.8"
            }
          },
          "title": "ApiVersion"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getApiVersionUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDevicesUsingGETQuery",
      "summary": "Gets a network’s devices",
      "description": "All glob filter parameters ignore case and support [the common glob wildcards](https://en.wikipedia.org/wiki/Glob_(programming)#Syntax) (`*`, `?`, `[abc]`, `[a-z]`).",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "`\"name\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "displayName",
          "type": "string",
          "info": "`\"displayName\"` glob filter. Use `?displayName=` to request devices that have no `\"displayName\"` property (because it’s the same as `\"name\"`).: string",
          "required": false,
          "schema": {
            "title": "displayName",
            "type": "string"
          }
        },
        {
          "name": "sourceName",
          "type": "string",
          "info": "`\"sourceName\"` glob filter. Use `?sourceName=` to request devices that have no `\"sourceName\"` property (because it’s the same as `\"name\"`).: string",
          "required": false,
          "schema": {
            "title": "sourceName",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "string",
          "info": "`\"type\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "type",
            "type": "string"
          }
        },
        {
          "name": "manufacturer",
          "type": "string",
          "info": "`\"manufacturer\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "manufacturer",
            "type": "string"
          }
        },
        {
          "name": "model",
          "type": "string",
          "info": "`\"model\"` glob filter. Use `?model=` to request devices with no `\"model\"` property.: string",
          "required": false,
          "schema": {
            "title": "model",
            "type": "string"
          }
        },
        {
          "name": "platform",
          "type": "string",
          "info": "`\"platform\"` glob filter: string",
          "required": false,
          "schema": {
            "title": "platform",
            "type": "string"
          }
        },
        {
          "name": "osVersion",
          "type": "string",
          "info": "`\"osVersion\"` glob filter. Use `?osVersion=` to request devices with no `\"osVersion\"` property.: string",
          "required": false,
          "schema": {
            "title": "osVersion",
            "type": "string"
          }
        },
        {
          "name": "collectionError",
          "type": "string",
          "info": "`\"collectionError\"` glob filter. Use `?collectionError=` to request devices with no `\"collectionError\"` property (because collection succeeded). Use `?collectionError=*` ...(description truncated): string",
          "required": false,
          "schema": {
            "title": "collectionError",
            "type": "string"
          }
        },
        {
          "name": "processingError",
          "type": "string",
          "info": "`\"processingError\"` glob filter. Use `?processingError=` to request devices with no `\"processingError\"` property (because processing succeeded). Use `?processingError=*` ...(description truncated): string",
          "required": false,
          "schema": {
            "title": "processingError",
            "type": "string"
          }
        },
        {
          "name": "skip",
          "type": "number",
          "info": "Number of devices to skip (for paging): 123",
          "required": false,
          "schema": {
            "title": "skip",
            "type": "number"
          }
        },
        {
          "name": "limit",
          "type": "number",
          "info": "Maximum number of devices desired: 123",
          "required": false,
          "schema": {
            "title": "limit",
            "type": "number"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "The name that uniquely identifies the device in the network. For a standalone device, this is the [device source](#network-setup) name. For a virtual context, this is the device source name plus context name. For a cloud device, this is a globally unique identifier assigned by the cloud provider."
              },
              "displayName": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "The device’s common name, if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the name shown in the cloud provider’s console."
              },
              "sourceName": {
                "type": "string",
                "example": "nyc-dc01-fw02",
                "description": "Name of the [device source](#network-setup), if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the cloud account name."
              },
              "type": {
                "type": "string",
                "example": "FIREWALL"
              },
              "manufacturer": {
                "type": "string",
                "example": "F5"
              },
              "model": {
                "type": "string",
                "example": "BIG-IP Virtual Edition",
                "description": "Absent if the device model name is unknown."
              },
              "platform": {
                "type": "string",
                "example": "f5"
              },
              "osVersion": {
                "type": "string",
                "example": "11.6.1",
                "description": "Absent if the OS version is unknown."
              },
              "managementIps": {
                "type": "array",
                "example": [
                  "10.10.10.10"
                ],
                "description": "Absent if no management IP addresses are known.",
                "items": {
                  "type": "string"
                }
              },
              "collectionError": {
                "type": "string",
                "example": "AUTHENTICATION_FAILED",
                "description": "Absent if there was no collection error. \"NONE\" never occurs and will soon be removed from the value list."
              },
              "processingError": {
                "type": "string",
                "example": "LICENSE_EXHAUSTED",
                "description": "Absent if there was no processing error."
              }
            },
            "title": "Device"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getOneDeviceUsingGETQuery",
      "summary": "Gets a network device",
      "description": "Gets a network device",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "The name that uniquely identifies the device in the network. For a standalone device, this is the [device source](#network-setup) name. For a virtual context, this is the device source name plus context name. For a cloud device, this is a globally unique identifier assigned by the cloud provider."
            },
            "displayName": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "The device’s common name, if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the name shown in the cloud provider’s console."
            },
            "sourceName": {
              "type": "string",
              "example": "nyc-dc01-fw02",
              "description": "Name of the [device source](#network-setup), if different from `\"name\"`. Absent for most network devices. For a cloud device, this is the cloud account name."
            },
            "type": {
              "type": "string",
              "example": "FIREWALL"
            },
            "manufacturer": {
              "type": "string",
              "example": "F5"
            },
            "model": {
              "type": "string",
              "example": "BIG-IP Virtual Edition",
              "description": "Absent if the device model name is unknown."
            },
            "platform": {
              "type": "string",
              "example": "f5"
            },
            "osVersion": {
              "type": "string",
              "example": "11.6.1",
              "description": "Absent if the OS version is unknown."
            },
            "managementIps": {
              "type": "array",
              "example": [
                "10.10.10.10"
              ],
              "description": "Absent if no management IP addresses are known.",
              "items": {
                "type": "string"
              }
            },
            "collectionError": {
              "type": "string",
              "example": "AUTHENTICATION_FAILED",
              "description": "Absent if there was no collection error. \"NONE\" never occurs and will soon be removed from the value list."
            },
            "processingError": {
              "type": "string",
              "example": "LICENSE_EXHAUSTED",
              "description": "Absent if there was no processing error."
            }
          },
          "title": "Device"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOneDeviceUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getMissingDevicesUsingGETQuery",
      "summary": "Gets a network’s missing devices",
      "description": "Returns devices that are listed as CDP/LLDP neighbors of modeled devices but that aren’t yet included in the network model.",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "devices": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "nyc-dc01-rtr02",
                    "description": "A device name different from the names of all network devices already modeled"
                  },
                  "ipAddresses": {
                    "type": "array",
                    "example": [
                      "10.10.10.10"
                    ],
                    "items": {
                      "type": "string"
                    }
                  },
                  "type": {
                    "type": "string",
                    "example": "cisco_ios_ssh",
                    "description": "Detected device type. Absent if undetermined. Never `\"unknown\"`."
                  },
                  "possibleTypes": {
                    "type": "array",
                    "example": [
                      "cisco_ios_ssh",
                      "cisco_ios_xr_ssh"
                    ],
                    "description": "Possible device types if `type` wasn’t determined. Present if and only if `type` is absent. Never contains `\"unknown\"`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "neighbors": {
                    "type": "array",
                    "example": [
                      "nyc-dc01-tor01",
                      "nyc-dc01-rtr01"
                    ],
                    "description": "The names of the modeled devices from which this device was discovered.",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "title": "MissingDevice"
              }
            }
          },
          "title": "MissingDevices"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getMissingDevicesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getInternetNodeUsingGETQuery",
      "summary": "Gets the network’s internet node",
      "description": "Gets the network’s internet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "InternetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getIntranetNodesUsingGETQuery",
      "summary": "Gets a network’s intranet nodes",
      "description": "Gets a network’s intranet nodes",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "intranetNodes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "inet"
                  },
                  "connections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "gatewayPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "peerIps": {
                          "type": "array",
                          "example": [
                            "1.1.1.1"
                          ],
                          "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "subnetAutoDiscovery": {
                          "type": "string",
                          "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                        },
                        "subnets": {
                          "type": "array",
                          "example": [
                            "123.223.47.0/24"
                          ],
                          "description": "Site subnets. Routes for these subnets are always created on the node.",
                          "items": {
                            "type": "string"
                          }
                        },
                        "uplinkPort": {
                          "type": "object",
                          "properties": {
                            "device": {
                              "type": "string"
                            },
                            "port": {
                              "type": "string"
                            }
                          },
                          "title": "DevicePort"
                        },
                        "vlan": {
                          "type": "number",
                          "example": 100,
                          "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                        }
                      },
                      "title": "InetConnection"
                    }
                  }
                },
                "title": "IntranetNode"
              }
            }
          },
          "title": "IntranetNodeList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeUsingGETQuery",
      "summary": "Gets an intranet node",
      "description": "Gets an intranet node",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "example": "inet"
            },
            "connections": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "gatewayPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "peerIps": {
                    "type": "array",
                    "example": [
                      "1.1.1.1"
                    ],
                    "description": "IP addresses of BGP peers to which this connection’s site subnets are advertised. If empty, routes advertised to all BGP peers are examined.\n\nNote: This set is only used if `subnetAutoDiscovery` is `BGP_ROUTES`.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "subnetAutoDiscovery": {
                    "type": "string",
                    "description": "The types of routes from which site subnets are automatically inferred in the gateway device’s routing table. If `NONE`, subnets must be manually specified in `subnets`.\n\nNote: if not `NONE` and `subnets` is nonempty, routes are created on the node for both autodiscovered and manually defined subnets."
                  },
                  "subnets": {
                    "type": "array",
                    "example": [
                      "123.223.47.0/24"
                    ],
                    "description": "Site subnets. Routes for these subnets are always created on the node.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "uplinkPort": {
                    "type": "object",
                    "properties": {
                      "device": {
                        "type": "string"
                      },
                      "port": {
                        "type": "string"
                      }
                    },
                    "title": "DevicePort"
                  },
                  "vlan": {
                    "type": "number",
                    "example": 100,
                    "description": "The VLAN of traffic from `uplinkPort`, if tagged."
                  }
                },
                "title": "InetConnection"
              }
            }
          },
          "title": "IntranetNode"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getWanCircuitsUsingGETQuery",
      "summary": "Gets a network’s WAN circuits",
      "description": "Gets a network’s WAN circuits",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "wanCircuits": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "connection1",
                  "connection2",
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "wan-circuit-01"
                  },
                  "connection1": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  },
                  "connection2": {
                    "type": "object",
                    "required": [
                      "device",
                      "port"
                    ],
                    "properties": {
                      "device": {
                        "type": "string",
                        "description": "A customer edge device name"
                      },
                      "port": {
                        "type": "string",
                        "description": "The name of the connected port on `device`"
                      },
                      "vlan": {
                        "type": "number",
                        "example": 100,
                        "description": "The VLAN of traffic from `port`, if tagged"
                      }
                    },
                    "title": "WanCircuitConnection"
                  }
                },
                "title": "WanCircuit"
              }
            }
          },
          "title": "WanCircuitList"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getWanCircuitUsingGETQuery",
      "summary": "Gets a WAN circuit",
      "description": "Gets a WAN circuit",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "required": [
            "connection1",
            "connection2",
            "name"
          ],
          "properties": {
            "name": {
              "type": "string",
              "example": "wan-circuit-01"
            },
            "connection1": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            },
            "connection2": {
              "type": "object",
              "required": [
                "device",
                "port"
              ],
              "properties": {
                "device": {
                  "type": "string",
                  "description": "A customer edge device name"
                },
                "port": {
                  "type": "string",
                  "description": "The name of the connected port on `device`"
                },
                "vlan": {
                  "type": "number",
                  "example": 100,
                  "description": "The VLAN of traffic from `port`, if tagged"
                }
              },
              "title": "WanCircuitConnection"
            }
          },
          "title": "WanCircuit"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getCveIndexUsingGETQuery",
      "summary": "Exports the CVE index",
      "description": "The CVE index is a gzipped binary (.bin.gz) file.\n\nTo download the latest one from fwd.app:\n\n`curl -vu  :  https://fwd.app/api/cve-index -o cve-index.bin.gz`\n\nThe response includes a `Digest` header containing the file’s SHA-256 digest.",
      "input": [
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getCveIndexUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "exportDatabaseUsingGETQuery",
      "summary": "Exports a database backup .zip file",
      "description": "A database backup is a .zip file. To generate and download one:\n\n`curl -vu  :  https:// /api/database -o database.zip`\n\nStore backups carefully, as they may contain confidential information.\n\n**Note:** This operation is for on-premises deployments only.",
      "input": [
        {
          "name": "variant",
          "type": "string",
          "info": "Use `?variant=lightweight` to omit all network Snapshot data.: string",
          "required": false,
          "schema": {
            "title": "variant",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/exportDatabaseUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getAtlasUsingGETQuery",
      "summary": "Gets device locations",
      "description": "The response is a JSON object that maps device names to their location ids.\n\nSample response: `{\"atl-edge-fw01\": \"2\", \"ny-edge-fw2\": \"1\"}`",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getAtlasUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getLocationsUsingGETQuery",
      "summary": "Gets a network’s locations",
      "description": "Gets a network’s locations",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "id",
              "lat",
              "lng",
              "name"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "56"
              },
              "name": {
                "type": "string",
                "example": "Dayton DC"
              },
              "lat": {
                "type": "number",
                "example": 39.8113,
                "description": "A latitude (geographic coordinate), specified as an angle from -90 to +90 degrees"
              },
              "lng": {
                "type": "number",
                "example": -84.2722,
                "description": "A longitude (geographic coordinate), specified as an angle from -180 to +180 degrees"
              },
              "city": {
                "type": "string",
                "example": "Dayton",
                "description": "Name of the closest city (for display purposes only). Required if `adminDivision` or `country` is specified."
              },
              "adminDivision": {
                "type": "string",
                "example": "Ohio",
                "description": "Name of the administrative division (district, province, region, state, territory, etc.) that `city` is in (for display purposes only)"
              },
              "country": {
                "type": "string",
                "example": "United States",
                "description": "Name of the country that `city` is located in (for display purposes only). Required if `city` is specified."
              }
            },
            "title": "Location"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLocationsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getLocationUsingGETQuery",
      "summary": "Gets a network location",
      "description": "Gets a network location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLocationUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceClustersUsingGETQuery",
      "summary": "Gets the device clusters at a location",
      "description": "Gets the device clusters at a location",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "devices",
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "atl-edge"
              },
              "devices": {
                "type": "array",
                "example": [
                  "atl-edge-fw01",
                  "atl-edge-fw02",
                  "atl-isp-edge01",
                  "atl-isp-edge02"
                ],
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "DeviceCluster"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceClustersUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceClusterUsingGETQuery",
      "summary": "Gets a device cluster",
      "description": "Gets a device cluster",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "locationId",
          "type": "string",
          "info": "locationId: string",
          "required": true,
          "schema": {
            "title": "locationId",
            "type": "string"
          }
        },
        {
          "name": "clusterName",
          "type": "string",
          "info": "clusterName: string",
          "required": true,
          "schema": {
            "title": "clusterName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceClusterUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getCollectionSchedulesUsingGETQuery",
      "summary": "Gets a network’s collection schedules",
      "description": "Gets a network’s collection schedules",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectionSchedulesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getCollectionScheduleUsingGETQuery",
      "summary": "Gets a network collection schedule",
      "description": "Gets a network collection schedule",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "scheduleId",
          "type": "string",
          "info": "scheduleId: string",
          "required": true,
          "schema": {
            "title": "scheduleId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCollectionScheduleUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getDeviceSourceUsingGETQuery",
      "summary": "Gets a network device source",
      "description": "Gets a network device source",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceSourceName",
          "type": "string",
          "info": "deviceSourceName: string",
          "required": true,
          "schema": {
            "title": "deviceSourceName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceSourceUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getNqeQueriesUsingGETQuery",
      "summary": "Lists all NQE queries",
      "description": "Lists all NQE queries",
      "input": [
        {
          "name": "dir",
          "type": "string",
          "info": "If specified, include only queries in the given directory. The directory must start and end with a forward slash, such as `/L3/Advanced/`.: string",
          "required": false,
          "schema": {
            "title": "dir",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "queryId": {
                "type": "string",
                "example": "Q_123aabe22bfff1",
                "description": "The Query ID of the query"
              },
              "repository": {
                "type": "string",
                "example": "ORG",
                "enum": [
                  "FWD",
                  "ORG"
                ]
              },
              "path": {
                "type": "string",
                "example": "/L2/MtuConsistency",
                "description": "The unique path of the query, including its name, in the latest commit"
              },
              "intent": {
                "type": "string",
                "description": "The intent of the query in the latest commit"
              }
            },
            "title": "NqeQuery"
          }
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNqeQueriesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getVulnerabilitiesUsingGETQuery",
      "summary": "Gets vulnerabilities and possibly impacted devices",
      "description": "Gets vulnerabilities and possibly impacted devices",
      "input": [
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": true,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getVulnerabilitiesUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getEncryptorsUsingGETQuery",
      "summary": "Gets a network's encryptors",
      "description": "Gets a network's encryptors",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEncryptorsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getEncryptorUsingGETQuery",
      "summary": "Gets an encryptor",
      "description": "Gets an encryptor",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEncryptorUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getInternetNodeConnectionsUsingGETQuery",
      "summary": "Gets some internet node connections",
      "description": "Gets some internet node connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": false,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": false,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": false,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": false,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": false,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeConnectionsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeConnectionsUsingGETQuery",
      "summary": "Gets an intranet node’s connections",
      "description": "Gets an intranet node’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeConnectionsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL2VpnConnectionsUsingGETQuery",
      "summary": "Gets an L2VPN’s connections",
      "description": "Gets an L2VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "device",
          "type": "string",
          "info": "device: string",
          "required": true,
          "schema": {
            "title": "device",
            "type": "string"
          }
        },
        {
          "name": "port",
          "type": "string",
          "info": "port: string",
          "required": true,
          "schema": {
            "title": "port",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnConnectionsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL2VpnsUsingGETv1Query",
      "summary": "Gets a network’s L2VPNs",
      "description": "Gets a network’s L2VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnsUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getL2VpnUsingGETv1Query",
      "summary": "Gets an L2VPN",
      "description": "Gets an L2VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l2VpnName",
          "type": "string",
          "info": "l2VpnName: string",
          "required": true,
          "schema": {
            "title": "l2VpnName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2VpnUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getL3VpnConnectionsUsingGETQuery",
      "summary": "Gets an L3VPN’s connections",
      "description": "Gets an L3VPN’s connections",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "uplinkDevice",
          "type": "string",
          "info": "uplinkDevice: string",
          "required": true,
          "schema": {
            "title": "uplinkDevice",
            "type": "string"
          }
        },
        {
          "name": "uplinkPort",
          "type": "string",
          "info": "uplinkPort: string",
          "required": true,
          "schema": {
            "title": "uplinkPort",
            "type": "string"
          }
        },
        {
          "name": "gatewayDevice",
          "type": "string",
          "info": "gatewayDevice: string",
          "required": true,
          "schema": {
            "title": "gatewayDevice",
            "type": "string"
          }
        },
        {
          "name": "gatewayPort",
          "type": "string",
          "info": "gatewayPort: string",
          "required": true,
          "schema": {
            "title": "gatewayPort",
            "type": "string"
          }
        },
        {
          "name": "vlan",
          "type": "string",
          "info": "vlan: string",
          "required": true,
          "schema": {
            "title": "vlan",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnConnectionsUsingGETQuery"
      },
      "task": true
    },
    {
      "name": "getL3VpnsUsingGETv1Query",
      "summary": "Gets a network’s L3VPNs",
      "description": "Gets a network’s L3VPNs",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnsUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getL3VpnUsingGETv1Query",
      "summary": "Gets an L3VPN",
      "description": "Gets an L3VPN",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "l3VpnName",
          "type": "string",
          "info": "l3VpnName: string",
          "required": true,
          "schema": {
            "title": "l3VpnName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getInternetNodeUsingGETv1Query",
      "summary": "Gets the network’s internet node",
      "description": "Gets the network’s internet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getInternetNodeUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getIntranetNodesUsingGETv1Query",
      "summary": "Gets a network’s intranet nodes",
      "description": "Gets a network’s intranet nodes",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodesUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getIntranetNodeUsingGETv1Query",
      "summary": "Gets an intranet node",
      "description": "Gets an intranet node",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "nodeName",
          "type": "string",
          "info": "nodeName: string",
          "required": true,
          "schema": {
            "title": "nodeName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIntranetNodeUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getWanCircuitsUsingGETv1Query",
      "summary": "Gets a network’s WAN circuits",
      "description": "Gets a network’s WAN circuits",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitsUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getWanCircuitUsingGETv1Query",
      "summary": "Gets a WAN circuit",
      "description": "Gets a WAN circuit",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "wanCircuitName",
          "type": "string",
          "info": "wanCircuitName: string",
          "required": true,
          "schema": {
            "title": "wanCircuitName",
            "type": "string"
          }
        },
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWanCircuitUsingGETv1Query"
      },
      "task": true
    },
    {
      "name": "getL7ApplicationsUsingGET",
      "summary": "Lists known L7 applications",
      "description": "Lists known L7 applicationss",
      "input": [
        {
          "name": "queryObject",
          "type": "object",
          "info": "Object containing additional query parameters",
          "required": false,
          "schema": {
            "title": "queryObject",
            "type": "object"
          }
        },
        {
          "name": "additionalInfo",
          "type": "object",
          "info": "Object containing addtional information that may be needed for call.",
          "required": false,
          "schema": {
            "title": "additionalInfo",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL7ApplicationsUsingGET"
      },
      "task": true
    },
    {
      "name": "getClassicDevicesUsingGET",
      "summary": "Gets a network’s classic devices",
      "description": "Gets a network’s classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "withParam",
          "type": "array",
          "info": "with: array",
          "required": false,
          "schema": {
            "title": "withParam",
            "type": "array"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getClassicDevicesUsingGET"
      },
      "task": true
    },
    {
      "name": "addClassicDeviceUsingPOST",
      "summary": "Adds a new classic device",
      "description": "Adds a new classic device",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addClassicDeviceUsingPOST"
      },
      "task": true
    },
    {
      "name": "patchClassicDevicesUsingPATCH",
      "summary": "Updates specific classic devices",
      "description": "All JSON properties in the `update` object are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchClassicDevicesUsingPATCH"
      },
      "task": true
    },
    {
      "name": "addClassicDevicesUsingPOST",
      "summary": "Adds new classic devices",
      "description": "Adds new classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "body: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addClassicDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteAllClassicDevicesUsingPOST",
      "summary": "Deletes all of a network’s classic devices",
      "description": "Deletes all of a network’s classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteAllClassicDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "deleteClassicDevicesUsingPOST",
      "summary": "Deletes specific classic devices",
      "description": "Deletes specific classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteClassicDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "getSpecificClassicDevicesUsingPOST",
      "summary": "Gets specific classic devices",
      "description": "Gets specific classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "withParam",
          "type": "array",
          "info": "with: array",
          "required": false,
          "schema": {
            "title": "withParam",
            "type": "array"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSpecificClassicDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "putClassicDevicesUsingPOST",
      "summary": "Adds or updates classic devices",
      "description": "Adds or updates classic devices",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "body: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putClassicDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "getClassicDeviceUsingGET",
      "summary": "Gets a classic device",
      "description": "Gets a classic device",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "withParam",
          "type": "array",
          "info": "with: array",
          "required": false,
          "schema": {
            "title": "withParam",
            "type": "array"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getClassicDeviceUsingGET"
      },
      "task": true
    },
    {
      "name": "putClassicDeviceUsingPUT",
      "summary": "Adds or updates a classic device",
      "description": "Adds or updates a classic device",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putClassicDeviceUsingPUT"
      },
      "task": true
    },
    {
      "name": "deleteClassicDeviceUsingDELETE",
      "summary": "Deletes a classic device",
      "description": "Deletes a classic device",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteClassicDeviceUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchClassicDeviceUsingPATCH",
      "summary": "Updates a classic device",
      "description": "All JSON properties in the request body are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchClassicDeviceUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getCliCredentialsUsingGET",
      "summary": "Lists network device CLI credentials",
      "description": "Substitutes a system-generated identifier for each sensitive `password`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCliCredentialsUsingGET"
      },
      "task": true
    },
    {
      "name": "createCliCredentialUsingPOST",
      "summary": "Creates a network device CLI credential",
      "description": "Creates a network device CLI credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createCliCredentialUsingPOST"
      },
      "task": true
    },
    {
      "name": "createCliCredentialsUsingPATCH",
      "summary": "Creates network device CLI credentials",
      "description": "The response contains the same credentials as the request, in the same order.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "body: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createCliCredentialsUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getCliCredentialUsingGET",
      "summary": "Gets a network device CLI credential",
      "description": "Substitutes a system-generated identifier for the sensitive `password`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCliCredentialUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteCliCredentialUsingDELETE",
      "summary": "Deletes a network device CLI credential",
      "description": "Deletes a network device CLI credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteCliCredentialUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchCliCredentialUsingPATCH",
      "summary": "Updates a network device CLI credential",
      "description": "All JSON properties in the request body are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchCliCredentialUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getHttpCredentialsUsingGET",
      "summary": "Lists network device HTTP credentials",
      "description": "Substitutes a system-generated identifier for each sensitive `password`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getHttpCredentialsUsingGET"
      },
      "task": true
    },
    {
      "name": "createHttpCredentialUsingPOST",
      "summary": "Creates a network device HTTP credential",
      "description": "Creates a network device HTTP credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createHttpCredentialUsingPOST"
      },
      "task": true
    },
    {
      "name": "createHttpCredentialsUsingPATCH",
      "summary": "Creates network device HTTP credentials",
      "description": "The response contains the same credentials as the request, in the same order.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "body: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createHttpCredentialsUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getHttpCredentialUsingGET",
      "summary": "Gets a network device HTTP credential",
      "description": "Substitutes a system-generated identifier for the sensitive `password`.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getHttpCredentialUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteHttpCredentialUsingDELETE",
      "summary": "Deletes a network device HTTP credential",
      "description": "Deletes a network device HTTP credential",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteHttpCredentialUsingDELETE"
      },
      "task": true
    },
    {
      "name": "patchHttpCredentialUsingPATCH",
      "summary": "Updates a network device HTTP credential",
      "description": "All JSON properties in the request body are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "credentialId",
          "type": "string",
          "info": "credentialId: string",
          "required": true,
          "schema": {
            "title": "credentialId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchHttpCredentialUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getDeviceTagsUsingGET",
      "summary": "Gets all device tags",
      "description": "Gets all device tags",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceTagsUsingGET"
      },
      "task": true
    },
    {
      "name": "addDeviceTagUsingPOST",
      "summary": "Creates a device tag",
      "description": "Creates a device tag",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addDeviceTagUsingPOST"
      },
      "task": true
    },
    {
      "name": "addDeviceTagsBatchUsingPOST",
      "summary": "Creates device tags",
      "description": "This operation is for creating multiple new device tags all at once.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "body: array",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addDeviceTagsBatchUsingPOST"
      },
      "task": true
    },
    {
      "name": "addDeviceTagsToDevicesUsingPOST",
      "summary": "Adds tags to devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addDeviceTagsToDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "removeAllDeviceTagsFromDevicesUsingPOST",
      "summary": "Removes all tags from devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/removeAllDeviceTagsFromDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "removeDeviceTagsFromDevicesUsingPOST",
      "summary": "Removes tags from devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/removeDeviceTagsFromDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "replaceAllDeviceTagsForDevicesUsingPOST",
      "summary": "Replaces all tags for devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/replaceAllDeviceTagsForDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "getDeviceTagsWithDevicesUsingGET",
      "summary": "Gets all tags with their devices",
      "description": "If **snapshotId** is specified, the response will include device names that were associated with the tag(s) as of the identified network Snapshot.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceTagsWithDevicesUsingGET"
      },
      "task": true
    },
    {
      "name": "getDeviceTagUsingGET",
      "summary": "Gets a device tag",
      "description": "Gets a device tag",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceTagUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteDeviceTagUsingDELETE",
      "summary": "Deletes a device tag",
      "description": "**Warning:** This operation deletes the device tag from the network completely. It removes the tag from all devices and endpoints in all the network’s Snapshots.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteDeviceTagUsingDELETE"
      },
      "task": true
    },
    {
      "name": "updateDeviceTagUsingPATCH",
      "summary": "Updates a device tag",
      "description": "All JSON properties in the request body are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateDeviceTagUsingPATCH"
      },
      "task": true
    },
    {
      "name": "addDeviceTagToDevicesUsingPOST",
      "summary": "Adds a tag to devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addDeviceTagToDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "removeDeviceTagFromDevicesUsingPOST",
      "summary": "Removes a tag from devices",
      "description": "If **snapshotId** is specified, the change will take effect starting from the identified network Snapshot, and `devices` in the request body must be the names of devices and/or endpoints in the Snapshot. Otherwise, `devices` must be the names of devices and/or endpoints configured as _collection sources_, and the change will take effect in the network’s next Snapshot.\n\nTo skip validation of `devices`, set the query parameter **validateDevices** to **false** in the URL.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "validateDevices",
          "type": "boolean",
          "info": "validateDevices: boolean",
          "required": false,
          "schema": {
            "title": "validateDevices",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/removeDeviceTagFromDevicesUsingPOST"
      },
      "task": true
    },
    {
      "name": "getDeviceTagWithDevicesUsingGET",
      "summary": "Gets a tag with its devices",
      "description": "If **snapshotId** is specified, the response will include device names that were associated with the tag(s) as of the identified network Snapshot.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "tagName",
          "type": "string",
          "info": "tagName: string",
          "required": true,
          "schema": {
            "title": "tagName",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "snapshotId: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceTagWithDevicesUsingGET"
      },
      "task": true
    },
    {
      "name": "getNqeQueryDiffUsingPOST",
      "summary": "Diffs the results of two NQE queries between two Snapshots.",
      "description": "Diffs the results of two NQE queries between two Snapshots.",
      "input": [
        {
          "name": "before",
          "type": "string",
          "info": "The ID for the Snapshot to base the diff on.: string",
          "required": true,
          "schema": {
            "title": "before",
            "type": "string"
          }
        },
        {
          "name": "after",
          "type": "string",
          "info": "The ID for the Snapshot to diff against the base Snapshot.: string",
          "required": true,
          "schema": {
            "title": "after",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The `queryId` property contains a Query ID of a query in NQE Library (this can be found in the information callout of a query listed in the Queries pane). The `commitId` ...(description truncated): object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNqeQueryDiffUsingPOST"
      },
      "task": true
    },
    {
      "name": "getUsersUsingGET",
      "summary": "Gets all user accounts",
      "description": "Gets all user accounts",
      "input": [
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getUsersUsingGET"
      },
      "task": true
    },
    {
      "name": "createUserUsingPOST",
      "summary": "Creates a user account",
      "description": "Creates a new `LOCAL` user account.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "body: object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createUserUsingPOST"
      },
      "task": true
    },
    {
      "name": "getUserUsingGET",
      "summary": "Gets a user account",
      "description": "Gets a user account",
      "input": [
        {
          "name": "userId",
          "type": "string",
          "info": "userId: string",
          "required": true,
          "schema": {
            "title": "userId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getUserUsingGET"
      },
      "task": true
    },
    {
      "name": "deleteUserUsingDELETE",
      "summary": "Deletes a user account",
      "description": "**Warning**: This operation *cannot* be undone.",
      "input": [
        {
          "name": "userId",
          "type": "string",
          "info": "userId: string",
          "required": true,
          "schema": {
            "title": "userId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteUserUsingDELETE"
      },
      "task": true
    },
    {
      "name": "updateUserUsingPATCH",
      "summary": "Updates a user account",
      "description": "All JSON properties in the request body are optional. Include only the properties you wish to change.",
      "input": [
        {
          "name": "userId",
          "type": "string",
          "info": "userId: string",
          "required": true,
          "schema": {
            "title": "userId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": ": object",
          "required": true,
          "schema": {
            "type": "object",
            "definitions": {}
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateUserUsingPATCH"
      },
      "task": true
    },
    {
      "name": "getDeviceFilesByNetworkIdUsingGET",
      "summary": "Lists a device’s data files",
      "description": "Lists a device’s data files",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "An optional Snapshot id. If omitted, the network’s latest processed Snapshot is used.: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFilesByNetworkIdUsingGET"
      },
      "task": true
    },
    {
      "name": "getDeviceFileContentByNetworkIdUsingGET",
      "summary": "Gets device data file content",
      "description": "Most device data files are text files. Some are binary. A file’s extension indicates its type.\n\nFor convenience, the .txt file extension is optional (can be omitted).",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "fileName",
          "type": "string",
          "info": "fileName: string",
          "required": true,
          "schema": {
            "title": "fileName",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "An optional Snapshot id. If omitted, the network’s latest processed Snapshot is used.: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDeviceFileContentByNetworkIdUsingGET"
      },
      "task": true
    },
    {
      "name": "getOneDeviceByNetworkIdUsingGET",
      "summary": "Gets a network device",
      "description": "Gets a network device",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "deviceName",
          "type": "string",
          "info": "deviceName: string",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "withParam",
          "type": "array",
          "info": "Optional device properties to include: array",
          "required": false,
          "schema": {
            "title": "withParam",
            "type": "array"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "An optional Snapshot id. If omitted, the network’s latest processed Snapshot is used.: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOneDeviceByNetworkIdUsingGET"
      },
      "task": true
    },
    {
      "name": "getMissingDevicesByNetworkIdUsingGET",
      "summary": "Gets a network’s missing devices",
      "description": "Returns devices that are listed as CDP, LLDP, iBGP or OSPF neighbors of modeled devices but that aren’t yet included in the network model.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "networkId: string",
          "required": true,
          "schema": {
            "title": "networkId",
            "type": "string"
          }
        },
        {
          "name": "snapshotId",
          "type": "string",
          "info": "An optional Snapshot id. If omitted, the network’s latest processed Snapshot is used.: string",
          "required": false,
          "schema": {
            "title": "snapshotId",
            "type": "string"
          }
        },
        {
          "name": "iapMetadata",
          "type": "object",
          "info": "IAP Metadata object contains additional info needed for the request: payload, uriPathVars, uriQuery, uriOptions, addlHeaders, authData, callProperties, etc.",
          "required": false,
          "schema": {
            "title": "iapMetadata",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getMissingDevicesByNetworkIdUsingGET"
      },
      "task": true
    }
  ],
  "views": []
}