{
  "id": "@itentialopensource/adapter-nokia_nsp_sdn",
  "type": "Adapter",
  "export": "NokiaNSPSDN",
  "title": "nokia_nsp_sdn",
  "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"
          }
        },
        {
          "name": "persistFlag",
          "type": "boolean",
          "info": "Whether the input properties should be saved",
          "required": true,
          "schema": {
            "title": "persistFlag",
            "type": "boolean"
          }
        }
      ],
      "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": [],
      "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 IAP database",
      "description": "Moves entities from an adapter into the IAP 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": "getApplicationId",
      "summary": "Find an object by Application ID",
      "description": "Find an object by Application ID",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The Application ID of the object: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    }
                  },
                  "title": "BaseEntity"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseEntity»"
            }
          },
          "title": "ResponseData«BaseEntity»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getApplicationId"
      },
      "task": true
    },
    {
      "name": "setApplicationId",
      "summary": "Set an object Application ID",
      "description": "Set an object Application ID",
      "input": [
        {
          "name": "appId",
          "type": "string",
          "info": "The Application ID to be set: string",
          "required": true,
          "schema": {
            "title": "appId",
            "type": "string"
          }
        },
        {
          "name": "id",
          "type": "string",
          "info": "The unique identifier of the object: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    }
                  },
                  "title": "BaseEntity"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseEntity»"
            }
          },
          "title": "ResponseData«BaseEntity»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/setApplicationId"
      },
      "task": true
    },
    {
      "name": "getConsumed",
      "summary": "Find all objects being consumed by an object",
      "description": "Find all objects being consumed by an object",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier of the object: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "OPERATOR",
                      "ADMIN",
                      "USER"
                    ]
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«string»»"
            }
          },
          "title": "ResponseData«List«string»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getConsumed"
      },
      "task": true
    },
    {
      "name": "findByExternalId",
      "summary": "Find the unique identifier of an object given an external identifier",
      "description": "Find the unique identifier of an object given an external identifier",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "An external identifier to the NSP.: {\"data\": {\"context\": \"Must be one of [NFM_T, NFM_P, NODE, MDM, NSP]\", \"id\": \"string\", \"location\": \"array\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "description": "The entity type that is managing this external-id",
                    "enum": [
                      "NFM_T",
                      "NFM_P",
                      "NODE",
                      "MDM",
                      "NSP"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The local identifier used on the entity."
                  },
                  "location": {
                    "type": "array",
                    "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "title": "ExternalId",
                "description": "An external identifier to the NSP."
              }
            },
            "title": "Request«ExternalId»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/findByExternalId"
      },
      "task": true
    },
    {
      "name": "getTenants",
      "summary": "Find all tenants assigned to an object",
      "description": "Find all tenants assigned to an object",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifiers for the object: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTenants"
      },
      "task": true
    },
    {
      "name": "get",
      "summary": "Find an object by a unique identifier",
      "description": "Find an object by a unique identifier",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    }
                  },
                  "title": "BaseEntity"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseEntity»"
            }
          },
          "title": "ResponseData«BaseEntity»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/get"
      },
      "task": true
    },
    {
      "name": "addL2BackhaulEndpoint",
      "summary": "Add an endpoint to a L2 Backhaul Service",
      "description": "Add an endpoint to a L2 Backhaul Service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "ETH transport services access parameters: {\"data\": {\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "accessLtpId": {
                    "type": "object",
                    "properties": {
                      "ipAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "uint32": {
                        "type": "integer",
                        "format": "int64"
                      }
                    },
                    "title": "TeTpId",
                    "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                  },
                  "accessNodeId": {
                    "type": "object",
                    "properties": {
                      "dottedQuad": {
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "title": "DottedQuad",
                        "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                      }
                    },
                    "title": "TeNodeId",
                    "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                  },
                  "bandwidthProfiles": {
                    "type": "object",
                    "properties": {
                      "egressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the egress direction."
                      },
                      "ingressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the ingress direction."
                      },
                      "ingressEgressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile."
                      }
                    },
                    "title": "BandwidthProfiles",
                    "description": "A grouping which represent bandwidth profile configuration."
                  },
                  "baseEndpointRequest": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the endpoint."
                      },
                      "id": {
                        "type": "string",
                        "description": "The UUID of the port"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the endpoint"
                      },
                      "readOnly": {
                        "type": "boolean",
                        "description": "Specifies whether or not this request is read-only"
                      }
                    },
                    "title": "BaseEndpointRequest",
                    "description": "All endpoints type definition"
                  },
                  "outerTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationOuterTag",
                    "description": "Classifies traffic using the outermost VLAN tag."
                  },
                  "secondTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationSecondTag",
                    "description": "Classifies traffic using the second outermost VLAN tag."
                  },
                  "serviceClassificationType": {
                    "type": "object",
                    "title": "ServiceClassificationType",
                    "description": "Service classification."
                  },
                  "splitHorizonGroup": {
                    "type": "string",
                    "description": "Identify a split horizon group"
                  },
                  "vlanOperations": {
                    "type": "object",
                    "properties": {
                      "asymmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "egress": {
                            "type": "object",
                            "description": "Egress operations"
                          },
                          "ingress": {
                            "type": "object",
                            "description": "Ingress operations"
                          }
                        },
                        "title": "AsymmetricalOperation",
                        "description": "Asymmetrical operations"
                      },
                      "symmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "vlanOperations": {
                            "type": "object",
                            "description": "A grouping which represents VLAN operations."
                          }
                        },
                        "title": "SymmetricalOperation",
                        "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                      }
                    },
                    "title": "NspEthtSvcAccessParametersVlanOperations"
                  }
                },
                "title": "NspEthtSvcAccessParameters",
                "description": "ETH transport services access parameters"
              }
            },
            "title": "Request«NspEthtSvcAccessParameters»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL2BackhaulEndpoint"
      },
      "task": true
    },
    {
      "name": "updateL2BackhaulEndpoint",
      "summary": "Update endpoint of a L2 Backhaul service",
      "description": "Update endpoint of a L2 Backhaul service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be modified: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "ETH transport services access parameters: {\"data\": {\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "accessLtpId": {
                    "type": "object",
                    "properties": {
                      "ipAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "uint32": {
                        "type": "integer",
                        "format": "int64"
                      }
                    },
                    "title": "TeTpId",
                    "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                  },
                  "accessNodeId": {
                    "type": "object",
                    "properties": {
                      "dottedQuad": {
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "title": "DottedQuad",
                        "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                      }
                    },
                    "title": "TeNodeId",
                    "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                  },
                  "bandwidthProfiles": {
                    "type": "object",
                    "properties": {
                      "egressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the egress direction."
                      },
                      "ingressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the ingress direction."
                      },
                      "ingressEgressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile."
                      }
                    },
                    "title": "BandwidthProfiles",
                    "description": "A grouping which represent bandwidth profile configuration."
                  },
                  "baseEndpointRequest": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the endpoint."
                      },
                      "id": {
                        "type": "string",
                        "description": "The UUID of the port"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the endpoint"
                      },
                      "readOnly": {
                        "type": "boolean",
                        "description": "Specifies whether or not this request is read-only"
                      }
                    },
                    "title": "BaseEndpointRequest",
                    "description": "All endpoints type definition"
                  },
                  "outerTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationOuterTag",
                    "description": "Classifies traffic using the outermost VLAN tag."
                  },
                  "secondTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationSecondTag",
                    "description": "Classifies traffic using the second outermost VLAN tag."
                  },
                  "serviceClassificationType": {
                    "type": "object",
                    "title": "ServiceClassificationType",
                    "description": "Service classification."
                  },
                  "splitHorizonGroup": {
                    "type": "string",
                    "description": "Identify a split horizon group"
                  },
                  "vlanOperations": {
                    "type": "object",
                    "properties": {
                      "asymmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "egress": {
                            "type": "object",
                            "description": "Egress operations"
                          },
                          "ingress": {
                            "type": "object",
                            "description": "Ingress operations"
                          }
                        },
                        "title": "AsymmetricalOperation",
                        "description": "Asymmetrical operations"
                      },
                      "symmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "vlanOperations": {
                            "type": "object",
                            "description": "A grouping which represents VLAN operations."
                          }
                        },
                        "title": "SymmetricalOperation",
                        "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                      }
                    },
                    "title": "NspEthtSvcAccessParametersVlanOperations"
                  }
                },
                "title": "NspEthtSvcAccessParameters",
                "description": "ETH transport services access parameters"
              }
            },
            "title": "Request«NspEthtSvcAccessParameters»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL2BackhaulEndpoint"
      },
      "task": true
    },
    {
      "name": "patchL2BackhaulEndpoint",
      "summary": "Patch endpoint of an L3 VPN service",
      "description": "Patch endpoint of an L3 VPN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "ETH transport services access parameters: {\"data\": {\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "accessLtpId": {
                    "type": "object",
                    "properties": {
                      "ipAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "uint32": {
                        "type": "integer",
                        "format": "int64"
                      }
                    },
                    "title": "TeTpId",
                    "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                  },
                  "accessNodeId": {
                    "type": "object",
                    "properties": {
                      "dottedQuad": {
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "title": "DottedQuad",
                        "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                      }
                    },
                    "title": "TeNodeId",
                    "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                  },
                  "bandwidthProfiles": {
                    "type": "object",
                    "properties": {
                      "egressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the egress direction."
                      },
                      "ingressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile used in the ingress direction."
                      },
                      "ingressEgressBandwidthProfileName": {
                        "type": "string",
                        "description": "Name of the bandwidth profile."
                      }
                    },
                    "title": "BandwidthProfiles",
                    "description": "A grouping which represent bandwidth profile configuration."
                  },
                  "baseEndpointRequest": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the endpoint."
                      },
                      "id": {
                        "type": "string",
                        "description": "The UUID of the port"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the endpoint"
                      },
                      "readOnly": {
                        "type": "boolean",
                        "description": "Specifies whether or not this request is read-only"
                      }
                    },
                    "title": "BaseEndpointRequest",
                    "description": "All endpoints type definition"
                  },
                  "outerTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationOuterTag",
                    "description": "Classifies traffic using the outermost VLAN tag."
                  },
                  "secondTag": {
                    "type": "object",
                    "properties": {
                      "vlanClassification": {
                        "type": "object",
                        "properties": {
                          "tagType": {
                            "type": "object",
                            "description": "The tag type used for VLAN classification."
                          },
                          "vlanRange": {
                            "type": "object",
                            "description": "List of VLAN ID values."
                          },
                          "vlanValue": {
                            "type": "object",
                            "description": "VLAN ID value."
                          }
                        },
                        "title": "VlanClassification",
                        "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                      }
                    },
                    "title": "VlanClassificationSecondTag",
                    "description": "Classifies traffic using the second outermost VLAN tag."
                  },
                  "serviceClassificationType": {
                    "type": "object",
                    "title": "ServiceClassificationType",
                    "description": "Service classification."
                  },
                  "splitHorizonGroup": {
                    "type": "string",
                    "description": "Identify a split horizon group"
                  },
                  "vlanOperations": {
                    "type": "object",
                    "properties": {
                      "asymmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "egress": {
                            "type": "object",
                            "description": "Egress operations"
                          },
                          "ingress": {
                            "type": "object",
                            "description": "Ingress operations"
                          }
                        },
                        "title": "AsymmetricalOperation",
                        "description": "Asymmetrical operations"
                      },
                      "symmetricalOperation": {
                        "type": "object",
                        "properties": {
                          "vlanOperations": {
                            "type": "object",
                            "description": "A grouping which represents VLAN operations."
                          }
                        },
                        "title": "SymmetricalOperation",
                        "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                      }
                    },
                    "title": "NspEthtSvcAccessParametersVlanOperations"
                  }
                },
                "title": "NspEthtSvcAccessParameters",
                "description": "ETH transport services access parameters"
              }
            },
            "title": "Request«NspEthtSvcAccessParameters»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL2BackhaulEndpoint"
      },
      "task": true
    },
    {
      "name": "createL2backhaul",
      "summary": "Create L2 Backhaul Service",
      "description": "Create L2 Backhaul Service",
      "input": [
        {
          "name": "autoPath",
          "type": "boolean",
          "info": "If True SF will automatically compuate the best path and use it for service provisioning: boolean",
          "required": true,
          "schema": {
            "title": "autoPath",
            "type": "boolean"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}], \"ethtSvcDescr\": \"string\", \"ethtSvcName\": \"string\", \"ethtSvcType\": {\"string\": \"string\"}, \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "accessLtpId": {
                          "type": "object",
                          "properties": {
                            "ipAddress": {
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "type": "object",
                                  "description": ""
                                },
                                "ipv6Address": {
                                  "type": "object",
                                  "description": ""
                                }
                              },
                              "title": "IpAddress",
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            },
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "TeTpId",
                          "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                        },
                        "accessNodeId": {
                          "type": "object",
                          "properties": {
                            "dottedQuad": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "DottedQuad",
                              "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                            }
                          },
                          "title": "TeNodeId",
                          "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                        },
                        "bandwidthProfiles": {
                          "type": "object",
                          "properties": {
                            "egressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the egress direction."
                            },
                            "ingressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the ingress direction."
                            },
                            "ingressEgressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile."
                            }
                          },
                          "title": "BandwidthProfiles",
                          "description": "A grouping which represent bandwidth profile configuration."
                        },
                        "baseEndpointRequest": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "title": "CustomAttribute",
                                "description": "A custom attribute"
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "BaseEndpointRequest",
                          "description": "All endpoints type definition"
                        },
                        "outerTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationOuterTag",
                          "description": "Classifies traffic using the outermost VLAN tag."
                        },
                        "secondTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationSecondTag",
                          "description": "Classifies traffic using the second outermost VLAN tag."
                        },
                        "serviceClassificationType": {
                          "type": "object",
                          "title": "ServiceClassificationType",
                          "description": "Service classification."
                        },
                        "splitHorizonGroup": {
                          "type": "string",
                          "description": "Identify a split horizon group"
                        },
                        "vlanOperations": {
                          "type": "object",
                          "properties": {
                            "asymmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "egress": {
                                  "type": "object",
                                  "description": "Egress operations"
                                },
                                "ingress": {
                                  "type": "object",
                                  "description": "Ingress operations"
                                }
                              },
                              "title": "AsymmetricalOperation",
                              "description": "Asymmetrical operations"
                            },
                            "symmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "vlanOperations": {
                                  "type": "object",
                                  "description": "A grouping which represents VLAN operations."
                                }
                              },
                              "title": "SymmetricalOperation",
                              "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                            }
                          },
                          "title": "NspEthtSvcAccessParametersVlanOperations"
                        }
                      },
                      "title": "NspEthtSvcAccessParameters",
                      "description": "ETH transport services access parameters"
                    }
                  },
                  "ethtSvcDescr": {
                    "type": "string",
                    "description": "Description of the ETH transport service."
                  },
                  "ethtSvcName": {
                    "type": "string",
                    "description": "Name of the p2p ETH transport service."
                  },
                  "ethtSvcType": {
                    "type": "object",
                    "properties": {
                      "string": {
                        "type": "string"
                      }
                    },
                    "title": "Servicetype",
                    "description": "Identifies the type of Ethernet service."
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "BackhaulL2RequestData",
                "description": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«BackhaulL2RequestData»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL2backhaul"
      },
      "task": true
    },
    {
      "name": "updateL2backhaul",
      "summary": "Modify L2 Backhaul service",
      "description": "Modify L2 Backhaul service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}], \"ethtSvcDescr\": \"string\", \"ethtSvcName\": \"string\", \"ethtSvcType\": {\"string\": \"string\"}, \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "accessLtpId": {
                          "type": "object",
                          "properties": {
                            "ipAddress": {
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "type": "object",
                                  "description": ""
                                },
                                "ipv6Address": {
                                  "type": "object",
                                  "description": ""
                                }
                              },
                              "title": "IpAddress",
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            },
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "TeTpId",
                          "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                        },
                        "accessNodeId": {
                          "type": "object",
                          "properties": {
                            "dottedQuad": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "DottedQuad",
                              "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                            }
                          },
                          "title": "TeNodeId",
                          "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                        },
                        "bandwidthProfiles": {
                          "type": "object",
                          "properties": {
                            "egressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the egress direction."
                            },
                            "ingressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the ingress direction."
                            },
                            "ingressEgressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile."
                            }
                          },
                          "title": "BandwidthProfiles",
                          "description": "A grouping which represent bandwidth profile configuration."
                        },
                        "baseEndpointRequest": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "title": "CustomAttribute",
                                "description": "A custom attribute"
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "BaseEndpointRequest",
                          "description": "All endpoints type definition"
                        },
                        "outerTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationOuterTag",
                          "description": "Classifies traffic using the outermost VLAN tag."
                        },
                        "secondTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationSecondTag",
                          "description": "Classifies traffic using the second outermost VLAN tag."
                        },
                        "serviceClassificationType": {
                          "type": "object",
                          "title": "ServiceClassificationType",
                          "description": "Service classification."
                        },
                        "splitHorizonGroup": {
                          "type": "string",
                          "description": "Identify a split horizon group"
                        },
                        "vlanOperations": {
                          "type": "object",
                          "properties": {
                            "asymmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "egress": {
                                  "type": "object",
                                  "description": "Egress operations"
                                },
                                "ingress": {
                                  "type": "object",
                                  "description": "Ingress operations"
                                }
                              },
                              "title": "AsymmetricalOperation",
                              "description": "Asymmetrical operations"
                            },
                            "symmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "vlanOperations": {
                                  "type": "object",
                                  "description": "A grouping which represents VLAN operations."
                                }
                              },
                              "title": "SymmetricalOperation",
                              "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                            }
                          },
                          "title": "NspEthtSvcAccessParametersVlanOperations"
                        }
                      },
                      "title": "NspEthtSvcAccessParameters",
                      "description": "ETH transport services access parameters"
                    }
                  },
                  "ethtSvcDescr": {
                    "type": "string",
                    "description": "Description of the ETH transport service."
                  },
                  "ethtSvcName": {
                    "type": "string",
                    "description": "Name of the p2p ETH transport service."
                  },
                  "ethtSvcType": {
                    "type": "object",
                    "properties": {
                      "string": {
                        "type": "string"
                      }
                    },
                    "title": "Servicetype",
                    "description": "Identifies the type of Ethernet service."
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "BackhaulL2RequestData",
                "description": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«BackhaulL2RequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL2backhaul"
      },
      "task": true
    },
    {
      "name": "patchL2backhaul",
      "summary": "Patch L2 Backhaul service",
      "description": "Patch L2 Backhaul service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"accessLtpId\": {\"ipAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"uint32\": 123}, \"accessNodeId\": {\"dottedQuad\": {\"string\": \"string\"}}, \"bandwidthProfiles\": {\"egressBandwidthProfileName\": \"string\", \"ingressBandwidthProfileName\": \"string\", \"ingressEgressBandwidthProfileName\": \"string\"}, \"baseEndpointRequest\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}, \"outerTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"secondTag\": {\"vlanClassification\": {\"tagType\": \"object\", \"vlanRange\": \"object\", \"vlanValue\": \"object\"}}, \"serviceClassificationType\": \"object\", \"splitHorizonGroup\": \"string\", \"vlanOperations\": {\"asymmetricalOperation\": {\"egress\": \"object\", \"ingress\": \"object\"}, \"symmetricalOperation\": {\"vlanOperations\": \"object\"}}}], \"ethtSvcDescr\": \"string\", \"ethtSvcName\": \"string\", \"ethtSvcType\": {\"string\": \"string\"}, \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "accessLtpId": {
                          "type": "object",
                          "properties": {
                            "ipAddress": {
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "type": "object",
                                  "description": ""
                                },
                                "ipv6Address": {
                                  "type": "object",
                                  "description": ""
                                }
                              },
                              "title": "IpAddress",
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            },
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "TeTpId",
                          "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                        },
                        "accessNodeId": {
                          "type": "object",
                          "properties": {
                            "dottedQuad": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "DottedQuad",
                              "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                            }
                          },
                          "title": "TeNodeId",
                          "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                        },
                        "bandwidthProfiles": {
                          "type": "object",
                          "properties": {
                            "egressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the egress direction."
                            },
                            "ingressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile used in the ingress direction."
                            },
                            "ingressEgressBandwidthProfileName": {
                              "type": "string",
                              "description": "Name of the bandwidth profile."
                            }
                          },
                          "title": "BandwidthProfiles",
                          "description": "A grouping which represent bandwidth profile configuration."
                        },
                        "baseEndpointRequest": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "title": "CustomAttribute",
                                "description": "A custom attribute"
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "BaseEndpointRequest",
                          "description": "All endpoints type definition"
                        },
                        "outerTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationOuterTag",
                          "description": "Classifies traffic using the outermost VLAN tag."
                        },
                        "secondTag": {
                          "type": "object",
                          "properties": {
                            "vlanClassification": {
                              "type": "object",
                              "properties": {
                                "tagType": {
                                  "type": "object",
                                  "description": "The tag type used for VLAN classification."
                                },
                                "vlanRange": {
                                  "type": "object",
                                  "description": "List of VLAN ID values."
                                },
                                "vlanValue": {
                                  "type": "object",
                                  "description": "VLAN ID value."
                                }
                              },
                              "title": "VlanClassification",
                              "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                            }
                          },
                          "title": "VlanClassificationSecondTag",
                          "description": "Classifies traffic using the second outermost VLAN tag."
                        },
                        "serviceClassificationType": {
                          "type": "object",
                          "title": "ServiceClassificationType",
                          "description": "Service classification."
                        },
                        "splitHorizonGroup": {
                          "type": "string",
                          "description": "Identify a split horizon group"
                        },
                        "vlanOperations": {
                          "type": "object",
                          "properties": {
                            "asymmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "egress": {
                                  "type": "object",
                                  "description": "Egress operations"
                                },
                                "ingress": {
                                  "type": "object",
                                  "description": "Ingress operations"
                                }
                              },
                              "title": "AsymmetricalOperation",
                              "description": "Asymmetrical operations"
                            },
                            "symmetricalOperation": {
                              "type": "object",
                              "properties": {
                                "vlanOperations": {
                                  "type": "object",
                                  "description": "A grouping which represents VLAN operations."
                                }
                              },
                              "title": "SymmetricalOperation",
                              "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                            }
                          },
                          "title": "NspEthtSvcAccessParametersVlanOperations"
                        }
                      },
                      "title": "NspEthtSvcAccessParameters",
                      "description": "ETH transport services access parameters"
                    }
                  },
                  "ethtSvcDescr": {
                    "type": "string",
                    "description": "Description of the ETH transport service."
                  },
                  "ethtSvcName": {
                    "type": "string",
                    "description": "Name of the p2p ETH transport service."
                  },
                  "ethtSvcType": {
                    "type": "object",
                    "properties": {
                      "string": {
                        "type": "string"
                      }
                    },
                    "title": "Servicetype",
                    "description": "Identifies the type of Ethernet service."
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "BackhaulL2RequestData",
                "description": "The normalized Micorowave L2 Backhaul Service. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«BackhaulL2RequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL2backhaul"
      },
      "task": true
    },
    {
      "name": "getV4Services",
      "summary": "Query all service objects",
      "description": "Query all service objects",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      }
                    },
                    "title": "BaseService",
                    "description": "This object is a read only representation of a service"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseService»»"
            }
          },
          "title": "ResponseData«List«BaseService»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4Services"
      },
      "task": true
    },
    {
      "name": "createClines",
      "summary": "Create a C-Line service",
      "description": "Create a C-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"cemUseRtpHeader\": \"boolean\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"timeSlots\": \"string\"}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "cemUseRtpHeader": {
                    "type": "boolean",
                    "description": "Enable the inclusion of RTP header. It is disabled by default."
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "timeSlots": {
                          "type": "string",
                          "description": "The time-slots configured on the DS0 channel group. The expected form is comma separated digits for individual time-slots with hyphen separated digits for a range of time-slots. E.g. \"3\" or \"3,5\" or \"3,5,8-12,20\" are all valid representations of time-slots"
                        }
                      },
                      "title": "TdmEndpointRequest",
                      "description": "The TDM DS0 channel group definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ClineServiceRequest",
                "description": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ClineServiceRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createClines"
      },
      "task": true
    },
    {
      "name": "updateClines",
      "summary": "Modify a C-Line service",
      "description": "Modify a C-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"cemUseRtpHeader\": \"boolean\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"timeSlots\": \"string\"}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "cemUseRtpHeader": {
                    "type": "boolean",
                    "description": "Enable the inclusion of RTP header. It is disabled by default."
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "timeSlots": {
                          "type": "string",
                          "description": "The time-slots configured on the DS0 channel group. The expected form is comma separated digits for individual time-slots with hyphen separated digits for a range of time-slots. E.g. \"3\" or \"3,5\" or \"3,5,8-12,20\" are all valid representations of time-slots"
                        }
                      },
                      "title": "TdmEndpointRequest",
                      "description": "The TDM DS0 channel group definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ClineServiceRequest",
                "description": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ClineServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateClines"
      },
      "task": true
    },
    {
      "name": "patchClines",
      "summary": "Patch a C-Line service",
      "description": "Patch a C-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"cemUseRtpHeader\": \"boolean\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"timeSlots\": \"string\"}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "cemUseRtpHeader": {
                    "type": "boolean",
                    "description": "Enable the inclusion of RTP header. It is disabled by default."
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "timeSlots": {
                          "type": "string",
                          "description": "The time-slots configured on the DS0 channel group. The expected form is comma separated digits for individual time-slots with hyphen separated digits for a range of time-slots. E.g. \"3\" or \"3,5\" or \"3,5,8-12,20\" are all valid representations of time-slots"
                        }
                      },
                      "title": "TdmEndpointRequest",
                      "description": "The TDM DS0 channel group definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ClineServiceRequest",
                "description": "The normalized IP C-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ClineServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchClines"
      },
      "task": true
    },
    {
      "name": "updateClineEndpoint",
      "summary": "Update the endpoint of a C-Line service",
      "description": "Update the endpoint of a C-Line service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be updated: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The TDM DS0 channel group definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"timeSlots\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "timeSlots": {
                    "type": "string",
                    "description": "The time-slots configured on the DS0 channel group. The expected form is comma separated digits for individual time-slots with hyphen separated digits for a range of time-slots. E.g. \"3\" or \"3,5\" or \"3,5,8-12,20\" are all valid representations of time-slots"
                  }
                },
                "title": "TdmEndpointRequest",
                "description": "The TDM DS0 channel group definition"
              }
            },
            "title": "Request«TdmEndpointRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateClineEndpoint"
      },
      "task": true
    },
    {
      "name": "patchClineEndpoint",
      "summary": "Patch the endpoint of a C-Line service",
      "description": "Patch the endpoint of a C-Line service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The TDM DS0 channel group definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"timeSlots\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "timeSlots": {
                    "type": "string",
                    "description": "The time-slots configured on the DS0 channel group. The expected form is comma separated digits for individual time-slots with hyphen separated digits for a range of time-slots. E.g. \"3\" or \"3,5\" or \"3,5,8-12,20\" are all valid representations of time-slots"
                  }
                },
                "title": "TdmEndpointRequest",
                "description": "The TDM DS0 channel group definition"
              }
            },
            "title": "Request«TdmEndpointRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchClineEndpoint"
      },
      "task": true
    },
    {
      "name": "getComponents",
      "summary": "Retrieve inventory of service endpoints, tunnels, and physical links for the requested service UUID",
      "description": "Retrieve inventory of service endpoints, tunnels, and physical links for the requested service UUID",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier of service: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "baseServiceHierarchy": {
                      "type": "object",
                      "properties": {
                        "baseService": {
                          "type": "object",
                          "description": "This object is a read only representation of a service"
                        },
                        "serviceTunnels": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        }
                      },
                      "title": "BaseServiceHierarchy",
                      "description": "This object is a read only representation of a service"
                    }
                  },
                  "title": "ServiceHierarchy",
                  "description": "This object is a read only representation of a service and it's related hierarchy"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ServiceHierarchy»"
            }
          },
          "title": "ResponseData«ServiceHierarchy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getComponents"
      },
      "task": true
    },
    {
      "name": "createEaccess",
      "summary": "Create an IP E-Access service",
      "description": "Create an IP E-Access service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-Access service request: {\"data\": {\"adjacencies\": [{\"farEndIpAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"vcId\": 123}], \"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"mtu\": 123, \"name\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adjacencies": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "farEndIpAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "vcId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The pseudowire identifier that must match what is configured on the far-end."
                        }
                      },
                      "title": "Adjacency",
                      "description": "Adjacency"
                    }
                  },
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. Must match with far-end."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the service"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. Must match with far-end.",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  }
                },
                "title": "EaccessRequestData",
                "description": "The normalized E-Access service request"
              }
            },
            "title": "Request«EaccessRequestData»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createEaccess"
      },
      "task": true
    },
    {
      "name": "updateEaccess",
      "summary": "Modify an IP E-Access service",
      "description": "Modify an IP E-Access service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-Access service request: {\"data\": {\"adjacencies\": [{\"farEndIpAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"vcId\": 123}], \"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"mtu\": 123, \"name\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adjacencies": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "farEndIpAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "vcId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The pseudowire identifier that must match what is configured on the far-end."
                        }
                      },
                      "title": "Adjacency",
                      "description": "Adjacency"
                    }
                  },
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. Must match with far-end."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the service"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. Must match with far-end.",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  }
                },
                "title": "EaccessRequestData",
                "description": "The normalized E-Access service request"
              }
            },
            "title": "Request«EaccessRequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateEaccess"
      },
      "task": true
    },
    {
      "name": "patchEaccess",
      "summary": "Patch an IP E-Access service",
      "description": "Patch an IP E-Access service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-Access service request: {\"data\": {\"adjacencies\": [{\"farEndIpAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"vcId\": 123}], \"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"mtu\": 123, \"name\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adjacencies": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "farEndIpAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "vcId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The pseudowire identifier that must match what is configured on the far-end."
                        }
                      },
                      "title": "Adjacency",
                      "description": "Adjacency"
                    }
                  },
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. Must match with far-end."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the service"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. Must match with far-end.",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  }
                },
                "title": "EaccessRequestData",
                "description": "The normalized E-Access service request"
              }
            },
            "title": "Request«EaccessRequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchEaccess"
      },
      "task": true
    },
    {
      "name": "createElans",
      "summary": "Create an E-LAN VPN service",
      "description": "Create an E-LAN VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-LAN service request: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan. Autobind type 'gre' does not apply to eVPN-based E-Lan. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpElanServiceRequest",
                "description": "The normalized E-LAN service request"
              }
            },
            "title": "Request«IpElanServiceRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createElans"
      },
      "task": true
    },
    {
      "name": "updateElans",
      "summary": "Modify an E-LAN service",
      "description": "Modify an E-LAN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-LAN service request: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan. Autobind type 'gre' does not apply to eVPN-based E-Lan. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpElanServiceRequest",
                "description": "The normalized E-LAN service request"
              }
            },
            "title": "Request«IpElanServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElans"
      },
      "task": true
    },
    {
      "name": "patchElans",
      "summary": "Patch an E-LAN service",
      "description": "Patch an E-LAN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized E-LAN service request: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan. Autobind type 'gre' does not apply to eVPN-based E-Lan. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpElanServiceRequest",
                "description": "The normalized E-LAN service request"
              }
            },
            "title": "Request«IpElanServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchElans"
      },
      "task": true
    },
    {
      "name": "addElanEndpoint",
      "summary": "Add an endpoint to an E-LAN service",
      "description": "Add an endpoint to an E-LAN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The Layer 2 endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                },
                "title": "L2EndpointRequest",
                "description": "The Layer 2 endpoint definition"
              }
            },
            "title": "Request«L2EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addElanEndpoint"
      },
      "task": true
    },
    {
      "name": "updateElanEndpoint",
      "summary": "Update the endpoint of an E-LAN service",
      "description": "Update the endpoint of an E-LAN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be modified: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The Layer 2 endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                },
                "title": "L2EndpointRequest",
                "description": "The Layer 2 endpoint definition"
              }
            },
            "title": "Request«L2EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElanEndpoint"
      },
      "task": true
    },
    {
      "name": "patchElanEndpoint",
      "summary": "Patch the endpoint of an E-LAN service",
      "description": "Patch the endpoint of an E-LAN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The Layer 2 endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                },
                "title": "L2EndpointRequest",
                "description": "The Layer 2 endpoint definition"
              }
            },
            "title": "Request«L2EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchElanEndpoint"
      },
      "task": true
    },
    {
      "name": "createElines",
      "summary": "Create an IP or optical E-Line service",
      "description": "Create an IP or optical E-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"diverseFrom\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based Eline. Autobind type 'gre' does not apply to eVPN-based E-Line. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "diverseFrom": {
                    "type": "string",
                    "description": "Specifies the identifier of the service to be diverse from. This currently only applies to PCEP-based LSPs"
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the bandwidth utilization of the service will be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ElineRequestData",
                "description": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ElineRequestData»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createElines"
      },
      "task": true
    },
    {
      "name": "updateElines",
      "summary": "Modify an IP or optical E-Line service",
      "description": "Modify an IP or optical E-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"diverseFrom\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based Eline. Autobind type 'gre' does not apply to eVPN-based E-Line. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "diverseFrom": {
                    "type": "string",
                    "description": "Specifies the identifier of the service to be diverse from. This currently only applies to PCEP-based LSPs"
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the bandwidth utilization of the service will be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ElineRequestData",
                "description": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ElineRequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElines"
      },
      "task": true
    },
    {
      "name": "patchElines",
      "summary": "Patch an IP or optical E-Line service",
      "description": "Patch an IP or optical E-Line service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"diverseFrom\": \"string\", \"endpointExtensions\": [{\"connectedInner\": 123, \"connectedOuter\": 123, \"connectedPortId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"nniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}, \"uniPortConfig\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": \"array\", \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"innerTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"readOnly\": \"boolean\"}}], \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}], \"groupId\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based Eline. Autobind type 'gre' does not apply to eVPN-based E-Line. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "diverseFrom": {
                    "type": "string",
                    "description": "Specifies the identifier of the service to be diverse from. This currently only applies to PCEP-based LSPs"
                  },
                  "endpointExtensions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "connectedInner": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag of connected port"
                        },
                        "connectedOuter": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag of connected port"
                        },
                        "connectedPortId": {
                          "type": "string",
                          "description": "The UUID of the connected port"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "nniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "NniPortConfig",
                          "description": "The NNI endpoint definition"
                        },
                        "uniPortConfig": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the endpoint."
                            },
                            "id": {
                              "type": "string",
                              "description": "The UUID of the port"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the endpoint"
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            },
                            "readOnly": {
                              "type": "boolean",
                              "description": "Specifies whether or not this request is read-only"
                            }
                          },
                          "title": "UniPortConfig",
                          "description": "The UNI Port endpoint definition"
                        }
                      },
                      "title": "L2EndpointExtensionRequest",
                      "description": "The Layer 2 endpoint extension definition"
                    }
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        }
                      },
                      "title": "L2EndpointRequest",
                      "description": "The Layer 2 endpoint definition"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the bandwidth utilization of the service will be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "ElineRequestData",
                "description": "The normalized IP or Optical E-Line service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«ElineRequestData»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchElines"
      },
      "task": true
    },
    {
      "name": "updateElineEndpoint",
      "summary": "Update the endpoint of an E-Line service",
      "description": "Update the endpoint of an E-Line service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be updated: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The Layer 2 endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                },
                "title": "L2EndpointRequest",
                "description": "The Layer 2 endpoint definition"
              }
            },
            "title": "Request«L2EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElineEndpoint"
      },
      "task": true
    },
    {
      "name": "patchElineEndpoint",
      "summary": "Patch the endpoint of an E-Line service",
      "description": "Patch the endpoint of an E-Line service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The Layer 2 endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                },
                "title": "L2EndpointRequest",
                "description": "The Layer 2 endpoint definition"
              }
            },
            "title": "Request«L2EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchElineEndpoint"
      },
      "task": true
    },
    {
      "name": "updateFixL3VpnVrfMembership",
      "summary": "Sites within the specified L3-VPN service that are not correctly connected by VRF membership will b",
      "description": "Sites within the specified L3-VPN service that are not correctly connected by VRF membership will be moved to a new service. Currently, only sites connected by Extranet route targets will be moved to a new service.",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the L3-VPN service that is being corrected: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateFixL3VpnVrfMembership"
      },
      "task": true
    },
    {
      "name": "createIes",
      "summary": "Create an IP IES service",
      "description": "Create an IP IES service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The IES service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpIesServiceRequest",
                "description": "The IES service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpIesServiceRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createIes"
      },
      "task": true
    },
    {
      "name": "updateIes",
      "summary": "Modify an IP IES service",
      "description": "Modify an IP IES service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The IES service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpIesServiceRequest",
                "description": "The IES service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpIesServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateIes"
      },
      "task": true
    },
    {
      "name": "patchIes",
      "summary": "Patch an IP IES service",
      "description": "Patch an IP IES service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The IES service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpIesServiceRequest",
                "description": "The IES service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpIesServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchIes"
      },
      "task": true
    },
    {
      "name": "addIesEndpoint",
      "summary": "Add an endpoint to a IES service",
      "description": "Add an endpoint to a IES service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addIesEndpoint"
      },
      "task": true
    },
    {
      "name": "updateIesEndpoint",
      "summary": "Update the endpoint of an IES service",
      "description": "Update the endpoint of an IES service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be updated: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateIesEndpoint"
      },
      "task": true
    },
    {
      "name": "patchIesEndpoint",
      "summary": "Patch the endpoint of an IES service",
      "description": "Patch the endpoint of an IES service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchIesEndpoint"
      },
      "task": true
    },
    {
      "name": "addIesLoopbackEndpoint",
      "summary": "Add a loop back endpoint to an IES service",
      "description": "Add a loop back endpoint to an IES service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addIesLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "updateIesLoopbackEndpoint",
      "summary": "Update loop back endpoint of an IES service",
      "description": "Update loop back endpoint of an IES service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be modified: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateIesLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "patchIesLoopbackEndpoint",
      "summary": "Patch loop back endpoint of an IES service",
      "description": "Patch loop back endpoint of an IES service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchIesLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "createL3DciVpns",
      "summary": "Support for limited Data Center use cases as VXLAN Stitched connectivity type. Unsupported Proof of",
      "description": "Support for limited Data Center use cases as VXLAN Stitched connectivity type. Unsupported Proof of Concept with MPLS End-to-End connectivity type. An L3 DCI Service is a Network Function Interconnect implementation providing Layer 3 Data Center connectivity for EVPN services in between data center and WAN entities. Integrates various use cases with the Nokia Nuage Solution, Segment Routing and VXLAN",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The L3 DCI service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"backhaulMtu\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"connectivity\": \"Must be one of [VXLAN_STITCHED, MPLS_E2E]\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"dcEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"domainTemplateId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"readOnly\": \"boolean\"}], \"description\": \"string\", \"dualHomed\": \"boolean\", \"ecmp\": 123, \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "connectivity",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "backhaulMtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU to used for the backhaul service connectivity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "connectivity": {
                    "type": "string",
                    "description": "Specifies the technology method in which the connectivity should be provided",
                    "enum": [
                      "VXLAN_STITCHED",
                      "MPLS_E2E"
                    ]
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "dcEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "domainTemplateId": {
                          "type": "string",
                          "description": "The domain template ID to instantiate"
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        }
                      },
                      "title": "L3DcEndpointRequest",
                      "description": "The Layer 3 DC Interconnect endpoint definition"
                    }
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "dualHomed": {
                    "type": "boolean",
                    "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                  },
                  "ecmp": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3DciServiceRequest",
                "description": "The L3 DCI service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3DciServiceRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL3DciVpns"
      },
      "task": true
    },
    {
      "name": "patchL3DciL3Endpoint",
      "summary": "Patch L3 endpoint of an L3 DCI service",
      "description": "Patch L3 endpoint of an L3 DCI service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the L3 endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the L3 DCI Service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3DciL3Endpoint"
      },
      "task": true
    },
    {
      "name": "getL3VpnRtAudit",
      "summary": "Runs an audit to find all L3-VPN services with invalid VRF membership. Currently the audit only con",
      "description": "Runs an audit to find all L3-VPN services with invalid VRF membership. Currently the audit only considers L3-VPN services that contains sites connected by Extranet route targets as invalid.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "OPERATOR",
                      "ADMIN",
                      "USER"
                    ]
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«string»»"
            }
          },
          "title": "ResponseData«List«string»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getL3VpnRtAudit"
      },
      "task": true
    },
    {
      "name": "createL3Vpns",
      "summary": "Create an L3 VPN service",
      "description": "Create an L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceRequest",
                "description": "The L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL3Vpns"
      },
      "task": true
    },
    {
      "name": "updateL3Vpns",
      "summary": "Modify an L3 VPN service",
      "description": "Modify an L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceRequest",
                "description": "The L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL3Vpns"
      },
      "task": true
    },
    {
      "name": "patchL3Vpns",
      "summary": "Patch an L3 VPN service",
      "description": "Patch an L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceRequest",
                "description": "The L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3Vpns"
      },
      "task": true
    },
    {
      "name": "addL3VpnEndpoint",
      "summary": "Add an endpoint to an L3 VPN service",
      "description": "Add an endpoint to an L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL3VpnEndpoint"
      },
      "task": true
    },
    {
      "name": "updateL3VpnEndpoint",
      "summary": "Update endpoint of an L3 VPN service",
      "description": "Update endpoint of an L3 VPN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be modified: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL3VpnEndpoint"
      },
      "task": true
    },
    {
      "name": "patchL3VpnEndpoint",
      "summary": "Patch endpoint of an L3 VPN service",
      "description": "Patch endpoint of an L3 VPN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointRequest"
              }
            },
            "title": "Request«L3EndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3VpnEndpoint"
      },
      "task": true
    },
    {
      "name": "addL3VpnLoopbackEndpoint",
      "summary": "Add a loop back endpoint to an L3 VPN service",
      "description": "Add a loop back endpoint to an L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL3VpnLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "updateL3VpnLoopbackEndpoint",
      "summary": "Update loop back endpoint of an L3 VPN service",
      "description": "Update loop back endpoint of an L3 VPN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be modified: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL3VpnLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "patchL3VpnLoopbackEndpoint",
      "summary": "Patch loop back endpoint of an L3 VPN service",
      "description": "Patch loop back endpoint of an L3 VPN service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "LoopbackEndpointRequest",
                "description": "The LoopBack endpoint definition"
              }
            },
            "title": "Request«LoopbackEndpointRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchL3VpnLoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "createLags",
      "summary": "Create a LAG service",
      "description": "Create a LAG service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized LAG service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"destinationTimeslot\": \"string\", \"destinations\": \"array\", \"encryption\": \"boolean\", \"excludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"facility\": 123, \"groupId\": \"string\", \"includeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"lambda\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"modulation\": \"Must be one of [SYSTEM_ASSIGNED, MOD_SP_QPSK, MOD_QPSK, MOD_8QAM, MOD_16QAM, MOD_BPSK]\", \"monitorBandwidth\": \"boolean\", \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"phaseEncoding\": \"Must be one of [system_assigned, absolute, differential]\", \"protection\": \"boolean\", \"protectionExcludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionIncludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionType\": \"Must be one of [SERVER_PROTECTED, SNC_N, SNC_N_SERVER_PROTECTED, SNCP_N_SERVER_PROTECTED, SNC_I, OPSA, YCABLE, SNCP, NA, OPSB, UNPROTECTED, SNCP_N, PROTECTED, SNC_I_SERVER_PROTECTED, OMSP]\", \"readOnly\": \"boolean\", \"regeneration\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reverseBW\": 123, \"reversionMode\": \"Must be one of [softauto, auto, manual]\", \"servicePlaneType\": \"Must be one of [controlPlane, mixedPlane, mrn, managementPlane]\", \"sourceTimeslot\": \"string\", \"sources\": \"array\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"waveshape\": \"Must be one of [single, _super, system_assigned, alien]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "destinationTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "destinations": {
                    "type": "array",
                    "description": "A list of destination service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether the service should be encrypted or not. The service will be rejected if no path can be found which does not support encryption."
                  },
                  "excludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "facility": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the port facility number to be used for the OCH service. The value can be 1, or 2 for 260SCX2 L port in 200G mode"
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "includeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "lambda": {
                    "type": "number",
                    "format": "double",
                    "description": "Unsupported - Specifies the lambda to be used for the service"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "modulation": {
                    "type": "string",
                    "description": "Specifies the modulation scheme for the optical signal",
                    "enum": [
                      "SYSTEM_ASSIGNED",
                      "MOD_SP_QPSK",
                      "MOD_QPSK",
                      "MOD_8QAM",
                      "MOD_16QAM",
                      "MOD_BPSK"
                    ]
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the bandwidth utilization of the service will be monitored"
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "phaseEncoding": {
                    "type": "string",
                    "description": "Specifies the encoding type of the optical signal",
                    "enum": [
                      "system_assigned",
                      "absolute",
                      "differential"
                    ]
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Unsupported - Specifies whether a protection path should be created"
                  },
                  "protectionExcludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionIncludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the provisioned protection type of the connection. Only UNPROTECTED/OPSB/YCABLE are supported for ODU service and UNPROTECTED/OPSA are supported for OCH service.",
                    "enum": [
                      "SERVER_PROTECTED",
                      "SNC_N",
                      "SNC_N_SERVER_PROTECTED",
                      "SNCP_N_SERVER_PROTECTED",
                      "SNC_I",
                      "OPSA",
                      "YCABLE",
                      "SNCP",
                      "NA",
                      "OPSB",
                      "UNPROTECTED",
                      "SNCP_N",
                      "PROTECTED",
                      "SNC_I_SERVER_PROTECTED",
                      "OMSP"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "regeneration": {
                    "type": "boolean",
                    "description": "Specifies whether the service is permitted over a network element which performs optical regeneration"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  },
                  "servicePlaneType": {
                    "type": "string",
                    "description": "Specifies whether the service is Control Plane or Management Plane.",
                    "enum": [
                      "controlPlane",
                      "mixedPlane",
                      "mrn",
                      "managementPlane"
                    ]
                  },
                  "sourceTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "sources": {
                    "type": "array",
                    "description": "A list of source service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "waveshape": {
                    "type": "string",
                    "description": "Specifies the shape of the optical signal to be used",
                    "enum": [
                      "single",
                      "_super",
                      "system_assigned",
                      "alien"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "LagRequest",
                "description": "The normalized LAG service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«LagRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createLags"
      },
      "task": true
    },
    {
      "name": "updateLags",
      "summary": "Modify an LAG service",
      "description": "Modify an LAG service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized LAG service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"destinationTimeslot\": \"string\", \"destinations\": \"array\", \"encryption\": \"boolean\", \"excludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"facility\": 123, \"groupId\": \"string\", \"includeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"lambda\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"modulation\": \"Must be one of [SYSTEM_ASSIGNED, MOD_SP_QPSK, MOD_QPSK, MOD_8QAM, MOD_16QAM, MOD_BPSK]\", \"monitorBandwidth\": \"boolean\", \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"phaseEncoding\": \"Must be one of [system_assigned, absolute, differential]\", \"protection\": \"boolean\", \"protectionExcludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionIncludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionType\": \"Must be one of [SERVER_PROTECTED, SNC_N, SNC_N_SERVER_PROTECTED, SNCP_N_SERVER_PROTECTED, SNC_I, OPSA, YCABLE, SNCP, NA, OPSB, UNPROTECTED, SNCP_N, PROTECTED, SNC_I_SERVER_PROTECTED, OMSP]\", \"readOnly\": \"boolean\", \"regeneration\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reverseBW\": 123, \"reversionMode\": \"Must be one of [softauto, auto, manual]\", \"servicePlaneType\": \"Must be one of [controlPlane, mixedPlane, mrn, managementPlane]\", \"sourceTimeslot\": \"string\", \"sources\": \"array\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"waveshape\": \"Must be one of [single, _super, system_assigned, alien]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "destinationTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "destinations": {
                    "type": "array",
                    "description": "A list of destination service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether the service should be encrypted or not. The service will be rejected if no path can be found which does not support encryption."
                  },
                  "excludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "facility": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the port facility number to be used for the OCH service. The value can be 1, or 2 for 260SCX2 L port in 200G mode"
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "includeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "lambda": {
                    "type": "number",
                    "format": "double",
                    "description": "Unsupported - Specifies the lambda to be used for the service"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "modulation": {
                    "type": "string",
                    "description": "Specifies the modulation scheme for the optical signal",
                    "enum": [
                      "SYSTEM_ASSIGNED",
                      "MOD_SP_QPSK",
                      "MOD_QPSK",
                      "MOD_8QAM",
                      "MOD_16QAM",
                      "MOD_BPSK"
                    ]
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the bandwidth utilization of the service will be monitored"
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "phaseEncoding": {
                    "type": "string",
                    "description": "Specifies the encoding type of the optical signal",
                    "enum": [
                      "system_assigned",
                      "absolute",
                      "differential"
                    ]
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Unsupported - Specifies whether a protection path should be created"
                  },
                  "protectionExcludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionIncludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the provisioned protection type of the connection. Only UNPROTECTED/OPSB/YCABLE are supported for ODU service and UNPROTECTED/OPSA are supported for OCH service.",
                    "enum": [
                      "SERVER_PROTECTED",
                      "SNC_N",
                      "SNC_N_SERVER_PROTECTED",
                      "SNCP_N_SERVER_PROTECTED",
                      "SNC_I",
                      "OPSA",
                      "YCABLE",
                      "SNCP",
                      "NA",
                      "OPSB",
                      "UNPROTECTED",
                      "SNCP_N",
                      "PROTECTED",
                      "SNC_I_SERVER_PROTECTED",
                      "OMSP"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "regeneration": {
                    "type": "boolean",
                    "description": "Specifies whether the service is permitted over a network element which performs optical regeneration"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  },
                  "servicePlaneType": {
                    "type": "string",
                    "description": "Specifies whether the service is Control Plane or Management Plane.",
                    "enum": [
                      "controlPlane",
                      "mixedPlane",
                      "mrn",
                      "managementPlane"
                    ]
                  },
                  "sourceTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "sources": {
                    "type": "array",
                    "description": "A list of source service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "waveshape": {
                    "type": "string",
                    "description": "Specifies the shape of the optical signal to be used",
                    "enum": [
                      "single",
                      "_super",
                      "system_assigned",
                      "alien"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "LagRequest",
                "description": "The normalized LAG service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«LagRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateLags"
      },
      "task": true
    },
    {
      "name": "createNormalizedL3Vpns",
      "summary": "Create a normalized L3 VPN service",
      "description": "Create a normalized L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"rd\": \"string\", \"readOnly\": \"boolean\", \"routeTargets\": [{\"rt\": \"string\", \"targetType\": \"Must be one of [import_export, exp, imp]\"}], \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "rd": {
                          "type": "string",
                          "description": "The route distinguisher for the service endpoint. Only used when configured with route target(s)."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routeTargets": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "rt": {
                                "type": "string",
                                "description": "The route target for the service"
                              },
                              "targetType": {
                                "type": "string",
                                "description": "The type of route target that is defined for the service. Can be either import or export",
                                "enum": [
                                  "import_export",
                                  "exp",
                                  "imp"
                                ]
                              }
                            },
                            "title": "RouteTarget"
                          }
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointNormalizedRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceNormalizedRequest",
                "description": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceNormalizedRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createNormalizedL3Vpns"
      },
      "task": true
    },
    {
      "name": "updateNormalizedL3Vpns",
      "summary": "Modify a normalized L3 VPN service",
      "description": "Modify a normalized L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"rd\": \"string\", \"readOnly\": \"boolean\", \"routeTargets\": [{\"rt\": \"string\", \"targetType\": \"Must be one of [import_export, exp, imp]\"}], \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "rd": {
                          "type": "string",
                          "description": "The route distinguisher for the service endpoint. Only used when configured with route target(s)."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routeTargets": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "rt": {
                                "type": "string",
                                "description": "The route target for the service"
                              },
                              "targetType": {
                                "type": "string",
                                "description": "The type of route target that is defined for the service. Can be either import or export",
                                "enum": [
                                  "import_export",
                                  "exp",
                                  "imp"
                                ]
                              }
                            },
                            "title": "RouteTarget"
                          }
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointNormalizedRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceNormalizedRequest",
                "description": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceNormalizedRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateNormalizedL3Vpns"
      },
      "task": true
    },
    {
      "name": "patchNormalizedL3Vpns",
      "summary": "Patch a normalized L3 VPN service",
      "description": "Patch a normalized L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"encryption\": \"boolean\", \"endpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"rd\": \"string\", \"readOnly\": \"boolean\", \"routeTargets\": [{\"rt\": \"string\", \"targetType\": \"Must be one of [import_export, exp, imp]\"}], \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}], \"groupId\": \"string\", \"loopbackEndpoints\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"readOnly\": \"boolean\", \"vrfName\": \"string\"}], \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mtu\": 123, \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"readOnly\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"reverseBW\": 123, \"templateId\": \"string\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. Autobind type 'any' does not apply to L3 services. This is referred to as Tunnel Type on the GUI",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether or not Network Group Encryption is enabled for the service"
                  },
                  "endpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "innerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "outerTag": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                        },
                        "portMode": {
                          "type": "string",
                          "description": "the mode of the Port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "rd": {
                          "type": "string",
                          "description": "The route distinguisher for the service endpoint. Only used when configured with route target(s)."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "routeTargets": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "rt": {
                                "type": "string",
                                "description": "The route target for the service"
                              },
                              "targetType": {
                                "type": "string",
                                "description": "The type of route target that is defined for the service. Can be either import or export",
                                "enum": [
                                  "import_export",
                                  "exp",
                                  "imp"
                                ]
                              }
                            },
                            "title": "RouteTarget"
                          }
                        },
                        "routingBgp": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingBgp",
                          "description": "BGP specific configuration."
                        },
                        "routingStatic": {
                          "type": "object",
                          "properties": {
                            "routes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            }
                          },
                          "title": "RoutingStatic"
                        },
                        "secondaryAddresses": {
                          "type": "array",
                          "description": "A list of secondary IP addresses assigned to the service endpoint",
                          "items": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "siteServiceQosProfile": {
                          "type": "object",
                          "properties": {
                            "egressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "egressParam": {
                              "type": "object",
                              "description": "Egress Qos policy override parameters associated with an endpoint."
                            },
                            "ingressOverrideQueues": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "ingressParam": {
                              "type": "object",
                              "description": "Ingress QoS policy override parameters associated with an endpoint."
                            },
                            "qosProfile": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The ID reference to the Generic QoS Profile"
                            }
                          },
                          "title": "SiteServiceQosProfile",
                          "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "L3EndpointNormalizedRequest"
                    }
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "loopbackEndpoints": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "adminState": {
                          "type": "string",
                          "description": "The current administrative state of the entity",
                          "enum": [
                            "MAINTENANCE",
                            "DOWN",
                            "UP"
                          ]
                        },
                        "appId": {
                          "type": "string",
                          "description": "The client-defined, custom Application ID for the entity"
                        },
                        "customAttributes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "attributeName": {
                                "type": "string",
                                "description": "custom attribute name"
                              },
                              "attributeValue": {
                                "type": "string",
                                "description": "custom attribute value"
                              }
                            },
                            "title": "CustomAttribute",
                            "description": "A custom attribute"
                          }
                        },
                        "customAttributesTemplateId": {
                          "type": "string",
                          "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                        },
                        "description": {
                          "type": "string",
                          "description": "A textual description of the endpoint."
                        },
                        "id": {
                          "type": "string",
                          "description": "The UUID of the port"
                        },
                        "isHub": {
                          "type": "boolean",
                          "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the endpoint"
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "readOnly": {
                          "type": "boolean",
                          "description": "Specifies whether or not this request is read-only"
                        },
                        "vrfName": {
                          "type": "string",
                          "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                        }
                      },
                      "title": "LoopbackEndpointRequest",
                      "description": "The LoopBack endpoint definition"
                    }
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. For L3 VPN services, the valid values are 0 or between 512 and 9000, and this is applied to all endpoints. For E-Line/E-LAN/C-Line services, the valid values are between 0 and 9194. A value of 0 means to use the default MTU of the equipment (the default usually corresponds to the value of the underlying transport medium). Note that for a composite service this may result in the segments having incompatible MTU values."
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "IpL3ServiceNormalizedRequest",
                "description": "The normalized L3 VPN service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«IpL3ServiceNormalizedRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being patched: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchNormalizedL3Vpns"
      },
      "task": true
    },
    {
      "name": "addL3VpnNormalizedEndpoint",
      "summary": "Add an endpoint to a normalized L3 VPN service",
      "description": "Add an endpoint to a normalized L3 VPN service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointNormalizedRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"rd\": \"string\", \"readOnly\": \"boolean\", \"routeTargets\": [{\"rt\": \"string\", \"targetType\": \"Must be one of [import_export, exp, imp]\"}], \"routingBgp\": {\"routes\": \"array\"}, \"routingStatic\": {\"routes\": \"array\"}, \"secondaryAddresses\": [{\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": \"array\", \"egressParam\": \"object\", \"ingressOverrideQueues\": \"array\", \"ingressParam\": \"object\", \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "type": "string",
                    "description": "the mode of the Port",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ]
                  },
                  "primaryAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Prefix": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpPrefix",
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "rd": {
                    "type": "string",
                    "description": "The route distinguisher for the service endpoint. Only used when configured with route target(s)."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routeTargets": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "rt": {
                          "type": "string",
                          "description": "The route target for the service"
                        },
                        "targetType": {
                          "type": "string",
                          "description": "The type of route target that is defined for the service. Can be either import or export",
                          "enum": [
                            "import_export",
                            "exp",
                            "imp"
                          ]
                        }
                      },
                      "title": "RouteTarget"
                    }
                  },
                  "routingBgp": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingBgp",
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      }
                    },
                    "title": "RoutingStatic"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "description": "A list of secondary IP addresses assigned to the service endpoint",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Prefix": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpPrefix",
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    }
                  },
                  "siteServiceQosProfile": {
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "description": "Egress Qos policy override parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "description": "Ingress QoS policy override parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "title": "SiteServiceQosProfile",
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "title": "L3EndpointNormalizedRequest"
              }
            },
            "title": "Request«L3EndpointNormalizedRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addL3VpnNormalizedEndpoint"
      },
      "task": true
    },
    {
      "name": "createOptical",
      "summary": "Create or modify an optical service",
      "description": "Create or modify an optical service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Optical service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"destinationTimeslot\": \"string\", \"destinations\": \"array\", \"encryption\": \"boolean\", \"excludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"facility\": 123, \"groupId\": \"string\", \"includeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"lambda\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"modulation\": \"Must be one of [SYSTEM_ASSIGNED, MOD_SP_QPSK, MOD_QPSK, MOD_8QAM, MOD_16QAM, MOD_BPSK]\", \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"phaseEncoding\": \"Must be one of [system_assigned, absolute, differential]\", \"protection\": \"boolean\", \"protectionExcludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionIncludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionType\": \"Must be one of [SERVER_PROTECTED, SNC_N, SNC_N_SERVER_PROTECTED, SNCP_N_SERVER_PROTECTED, SNC_I, OPSA, YCABLE, SNCP, NA, OPSB, UNPROTECTED, SNCP_N, PROTECTED, SNC_I_SERVER_PROTECTED, OMSP]\", \"readOnly\": \"boolean\", \"regeneration\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reverseBW\": 123, \"reversionMode\": \"Must be one of [softauto, auto, manual]\", \"servicePlaneType\": \"Must be one of [controlPlane, mixedPlane, mrn, managementPlane]\", \"sourceTimeslot\": \"string\", \"sources\": \"array\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"waveshape\": \"Must be one of [single, _super, system_assigned, alien]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "destinationTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "destinations": {
                    "type": "array",
                    "description": "A list of destination service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether the service should be encrypted or not. The service will be rejected if no path can be found which does not support encryption."
                  },
                  "excludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "facility": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the port facility number to be used for the OCH service. The value can be 1, or 2 for 260SCX2 L port in 200G mode"
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "includeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "lambda": {
                    "type": "number",
                    "format": "double",
                    "description": "Unsupported - Specifies the lambda to be used for the service"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "modulation": {
                    "type": "string",
                    "description": "Specifies the modulation scheme for the optical signal",
                    "enum": [
                      "SYSTEM_ASSIGNED",
                      "MOD_SP_QPSK",
                      "MOD_QPSK",
                      "MOD_8QAM",
                      "MOD_16QAM",
                      "MOD_BPSK"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "phaseEncoding": {
                    "type": "string",
                    "description": "Specifies the encoding type of the optical signal",
                    "enum": [
                      "system_assigned",
                      "absolute",
                      "differential"
                    ]
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Unsupported - Specifies whether a protection path should be created"
                  },
                  "protectionExcludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionIncludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the provisioned protection type of the connection. Only UNPROTECTED/OPSB/YCABLE are supported for ODU service and UNPROTECTED/OPSA are supported for OCH service.",
                    "enum": [
                      "SERVER_PROTECTED",
                      "SNC_N",
                      "SNC_N_SERVER_PROTECTED",
                      "SNCP_N_SERVER_PROTECTED",
                      "SNC_I",
                      "OPSA",
                      "YCABLE",
                      "SNCP",
                      "NA",
                      "OPSB",
                      "UNPROTECTED",
                      "SNCP_N",
                      "PROTECTED",
                      "SNC_I_SERVER_PROTECTED",
                      "OMSP"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "regeneration": {
                    "type": "boolean",
                    "description": "Specifies whether the service is permitted over a network element which performs optical regeneration"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  },
                  "servicePlaneType": {
                    "type": "string",
                    "description": "Specifies whether the service is Control Plane or Management Plane.",
                    "enum": [
                      "controlPlane",
                      "mixedPlane",
                      "mrn",
                      "managementPlane"
                    ]
                  },
                  "sourceTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "sources": {
                    "type": "array",
                    "description": "A list of source service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "waveshape": {
                    "type": "string",
                    "description": "Specifies the shape of the optical signal to be used",
                    "enum": [
                      "single",
                      "_super",
                      "system_assigned",
                      "alien"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "OpticsRequest",
                "description": "The normalized Optical service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«OpticsRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOptical"
      },
      "task": true
    },
    {
      "name": "updateOptical",
      "summary": "Modify an optical service",
      "description": "Modify an optical service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Optical service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"destinationTimeslot\": \"string\", \"destinations\": \"array\", \"encryption\": \"boolean\", \"excludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"facility\": 123, \"groupId\": \"string\", \"includeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"lambda\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"modulation\": \"Must be one of [SYSTEM_ASSIGNED, MOD_SP_QPSK, MOD_QPSK, MOD_8QAM, MOD_16QAM, MOD_BPSK]\", \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"phaseEncoding\": \"Must be one of [system_assigned, absolute, differential]\", \"protection\": \"boolean\", \"protectionExcludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionIncludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionType\": \"Must be one of [SERVER_PROTECTED, SNC_N, SNC_N_SERVER_PROTECTED, SNCP_N_SERVER_PROTECTED, SNC_I, OPSA, YCABLE, SNCP, NA, OPSB, UNPROTECTED, SNCP_N, PROTECTED, SNC_I_SERVER_PROTECTED, OMSP]\", \"readOnly\": \"boolean\", \"regeneration\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reverseBW\": 123, \"reversionMode\": \"Must be one of [softauto, auto, manual]\", \"servicePlaneType\": \"Must be one of [controlPlane, mixedPlane, mrn, managementPlane]\", \"sourceTimeslot\": \"string\", \"sources\": \"array\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"waveshape\": \"Must be one of [single, _super, system_assigned, alien]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "destinationTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "destinations": {
                    "type": "array",
                    "description": "A list of destination service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether the service should be encrypted or not. The service will be rejected if no path can be found which does not support encryption."
                  },
                  "excludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "facility": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the port facility number to be used for the OCH service. The value can be 1, or 2 for 260SCX2 L port in 200G mode"
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "includeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "lambda": {
                    "type": "number",
                    "format": "double",
                    "description": "Unsupported - Specifies the lambda to be used for the service"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "modulation": {
                    "type": "string",
                    "description": "Specifies the modulation scheme for the optical signal",
                    "enum": [
                      "SYSTEM_ASSIGNED",
                      "MOD_SP_QPSK",
                      "MOD_QPSK",
                      "MOD_8QAM",
                      "MOD_16QAM",
                      "MOD_BPSK"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "phaseEncoding": {
                    "type": "string",
                    "description": "Specifies the encoding type of the optical signal",
                    "enum": [
                      "system_assigned",
                      "absolute",
                      "differential"
                    ]
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Unsupported - Specifies whether a protection path should be created"
                  },
                  "protectionExcludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionIncludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the provisioned protection type of the connection. Only UNPROTECTED/OPSB/YCABLE are supported for ODU service and UNPROTECTED/OPSA are supported for OCH service.",
                    "enum": [
                      "SERVER_PROTECTED",
                      "SNC_N",
                      "SNC_N_SERVER_PROTECTED",
                      "SNCP_N_SERVER_PROTECTED",
                      "SNC_I",
                      "OPSA",
                      "YCABLE",
                      "SNCP",
                      "NA",
                      "OPSB",
                      "UNPROTECTED",
                      "SNCP_N",
                      "PROTECTED",
                      "SNC_I_SERVER_PROTECTED",
                      "OMSP"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "regeneration": {
                    "type": "boolean",
                    "description": "Specifies whether the service is permitted over a network element which performs optical regeneration"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  },
                  "servicePlaneType": {
                    "type": "string",
                    "description": "Specifies whether the service is Control Plane or Management Plane.",
                    "enum": [
                      "controlPlane",
                      "mixedPlane",
                      "mrn",
                      "managementPlane"
                    ]
                  },
                  "sourceTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "sources": {
                    "type": "array",
                    "description": "A list of source service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "waveshape": {
                    "type": "string",
                    "description": "Specifies the shape of the optical signal to be used",
                    "enum": [
                      "single",
                      "_super",
                      "system_assigned",
                      "alien"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "OpticsRequest",
                "description": "The normalized Optical service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«OpticsRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOptical"
      },
      "task": true
    },
    {
      "name": "patchOptical",
      "summary": "Patch an optical service",
      "description": "Patch an optical service",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The normalized Optical service request. This object is used to create and modify service entities in the network.: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bw\": 123, \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"customerId\": 123, \"description\": \"string\", \"destinationTimeslot\": \"string\", \"destinations\": \"array\", \"encryption\": \"boolean\", \"excludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"facility\": 123, \"groupId\": \"string\", \"includeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"lambda\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"modulation\": \"Must be one of [SYSTEM_ASSIGNED, MOD_SP_QPSK, MOD_QPSK, MOD_8QAM, MOD_16QAM, MOD_BPSK]\", \"name\": \"string\", \"nodeServiceId\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": \"string\", \"phaseEncoding\": \"Must be one of [system_assigned, absolute, differential]\", \"protection\": \"boolean\", \"protectionExcludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionIncludeRouteObject\": [{\"asNumber\": 123, \"interfaceId\": 123, \"linkId\": \"string\", \"linkLoose\": \"boolean\", \"regenInterfaceIds\": \"array\", \"regenLoose\": \"boolean\", \"regenRouterId\": {\"string\": \"string\"}, \"routerId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"srlgLoose\": \"boolean\", \"srlgs\": \"array\", \"v4Address\": {\"string\": \"string\"}, \"v4Loose\": \"boolean\", \"v4PrefixLength\": 123, \"v6Address\": {\"string\": \"string\"}, \"v6Loose\": \"boolean\", \"v6PrefixLength\": 123, \"value\": 123}], \"protectionType\": \"Must be one of [SERVER_PROTECTED, SNC_N, SNC_N_SERVER_PROTECTED, SNCP_N_SERVER_PROTECTED, SNC_I, OPSA, YCABLE, SNCP, NA, OPSB, UNPROTECTED, SNCP_N, PROTECTED, SNC_I_SERVER_PROTECTED, OMSP]\", \"readOnly\": \"boolean\", \"regeneration\": \"boolean\", \"requestedEndState\": \"Must be one of [Saved, Deployed]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reverseBW\": 123, \"reversionMode\": \"Must be one of [softauto, auto, manual]\", \"servicePlaneType\": \"Must be one of [controlPlane, mixedPlane, mrn, managementPlane]\", \"sourceTimeslot\": \"string\", \"sources\": \"array\", \"templateId\": \"string\", \"tunnelSelectionId\": \"string\", \"waveshape\": \"Must be one of [single, _super, system_assigned, alien]\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "bidirectional",
                  "name",
                  "objective"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined. Unsupported for L3 VPN Services",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4), 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062500 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the service."
                  },
                  "destinationTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "destinations": {
                    "type": "array",
                    "description": "A list of destination service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "encryption": {
                    "type": "boolean",
                    "description": "Specifies whether the service should be encrypted or not. The service will be rejected if no path can be found which does not support encryption."
                  },
                  "excludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "facility": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the port facility number to be used for the OCH service. The value can be 1, or 2 for 260SCX2 L port in 200G mode"
                  },
                  "groupId": {
                    "type": "string",
                    "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                  },
                  "includeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "lambda": {
                    "type": "number",
                    "format": "double",
                    "description": "Unsupported - Specifies the lambda to be used for the service"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in ms) to consider for the service."
                  },
                  "modulation": {
                    "type": "string",
                    "description": "Specifies the modulation scheme for the optical signal",
                    "enum": [
                      "SYSTEM_ASSIGNED",
                      "MOD_SP_QPSK",
                      "MOD_QPSK",
                      "MOD_8QAM",
                      "MOD_16QAM",
                      "MOD_BPSK"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "Specifies the name of the service"
                  },
                  "nodeServiceId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the node identifier of the service (Optional). Not applicable for multi-domain services."
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "pathProfileId": {
                    "type": "string",
                    "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                  },
                  "phaseEncoding": {
                    "type": "string",
                    "description": "Specifies the encoding type of the optical signal",
                    "enum": [
                      "system_assigned",
                      "absolute",
                      "differential"
                    ]
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Unsupported - Specifies whether a protection path should be created"
                  },
                  "protectionExcludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionIncludeRouteObject": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "asNumber": {
                          "type": "integer",
                          "format": "int32",
                          "description": "AS number"
                        },
                        "interfaceId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The interface identifier"
                        },
                        "linkId": {
                          "type": "string",
                          "description": "The identifier for the link."
                        },
                        "linkLoose": {
                          "type": "boolean",
                          "description": "Specifies if this contraint is strict or loose."
                        },
                        "regenInterfaceIds": {
                          "type": "array",
                          "description": "The regen interface identifiers",
                          "items": {
                            "type": "string"
                          }
                        },
                        "regenLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "regenRouterId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        },
                        "srlgLoose": {
                          "type": "boolean",
                          "description": "Specifies if this constraint is strict or loose"
                        },
                        "srlgs": {
                          "type": "array",
                          "description": "The srlg value",
                          "items": {
                            "type": "integer",
                            "format": "int64"
                          }
                        },
                        "v4Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv4Address",
                          "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                        },
                        "v4Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v4PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "v6Address": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "Ipv6Address",
                          "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                        },
                        "v6Loose": {
                          "type": "boolean",
                          "description": "Describes whether the object is loose if set, or otherwise strict"
                        },
                        "v6PrefixLength": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Length in bits of the IPv4 prefix"
                        },
                        "value": {
                          "type": "integer",
                          "format": "int64",
                          "description": "the label value"
                        }
                      },
                      "title": "NspOpticsExplicitRoute",
                      "description": "The explicit route object for Optical services"
                    }
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the provisioned protection type of the connection. Only UNPROTECTED/OPSB/YCABLE are supported for ODU service and UNPROTECTED/OPSA are supported for OCH service.",
                    "enum": [
                      "SERVER_PROTECTED",
                      "SNC_N",
                      "SNC_N_SERVER_PROTECTED",
                      "SNCP_N_SERVER_PROTECTED",
                      "SNC_I",
                      "OPSA",
                      "YCABLE",
                      "SNCP",
                      "NA",
                      "OPSB",
                      "UNPROTECTED",
                      "SNCP_N",
                      "PROTECTED",
                      "SNC_I_SERVER_PROTECTED",
                      "OMSP"
                    ]
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "regeneration": {
                    "type": "boolean",
                    "description": "Specifies whether the service is permitted over a network element which performs optical regeneration"
                  },
                  "requestedEndState": {
                    "type": "string",
                    "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                    "enum": [
                      "Saved",
                      "Deployed"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reverseBW": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  },
                  "servicePlaneType": {
                    "type": "string",
                    "description": "Specifies whether the service is Control Plane or Management Plane.",
                    "enum": [
                      "controlPlane",
                      "mixedPlane",
                      "mrn",
                      "managementPlane"
                    ]
                  },
                  "sourceTimeslot": {
                    "type": "string",
                    "description": "Applies timeslots to the port represented in a comma seperated value"
                  },
                  "sources": {
                    "type": "array",
                    "description": "A list of source service endpoints",
                    "items": {
                      "type": "string"
                    }
                  },
                  "templateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the template to apply to the service. The values specified in the request will override the values defined in the template."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                  },
                  "waveshape": {
                    "type": "string",
                    "description": "Specifies the shape of the optical signal to be used",
                    "enum": [
                      "single",
                      "_super",
                      "system_assigned",
                      "alien"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "Specifies the Workflow Profile to used for this service"
                  }
                },
                "title": "OpticsRequest",
                "description": "The normalized Optical service request. This object is used to create and modify service entities in the network."
              }
            },
            "title": "Request«OpticsRequest»"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service that is being modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchOptical"
      },
      "task": true
    },
    {
      "name": "getPhysicalLinksOnService",
      "summary": "Query physical links used by service",
      "description": "Query physical links used by service",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of service: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "boolean",
                        "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "The id of the destination network element"
                      },
                      "destinationName": {
                        "type": "string",
                        "description": "The name of the destination network element"
                      },
                      "destinationPortId": {
                        "type": "string",
                        "description": "The id of the destination NNI port"
                      },
                      "destinationPortName": {
                        "type": "string",
                        "description": "The name of the destination NNI port"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "linkCost": {
                        "type": "object",
                        "properties": {
                          "cost": {
                            "type": "number",
                            "format": "double",
                            "description": "Allocation cost of the physical link"
                          },
                          "latency": {
                            "type": "number",
                            "format": "double",
                            "description": "The latency of the physical link in microseconds"
                          }
                        },
                        "title": "LinkCost"
                      },
                      "lxcontainer": {
                        "type": "object",
                        "properties": {
                          "lxinformationList": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "LXContainer"
                      },
                      "lxpresent": {
                        "type": "boolean",
                        "description": "If there is a presence of an 1830 LX"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the physical link"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "The id of the source network element"
                      },
                      "sourceName": {
                        "type": "string",
                        "description": "The name of the source network element"
                      },
                      "sourcePortId": {
                        "type": "string",
                        "description": "The id of the source NNI port"
                      },
                      "sourcePortName": {
                        "type": "string",
                        "description": "The name of the source NNI port"
                      },
                      "srlgs": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "title": "PhysicalLink",
                    "description": "A physical link represents a link connecting different network elements."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«PhysicalLink»»"
            }
          },
          "title": "ResponseData«List«PhysicalLink»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPhysicalLinksOnService"
      },
      "task": true
    },
    {
      "name": "getResourceCount",
      "summary": "getResourceCount",
      "description": "getResourceCount",
      "input": [
        {
          "name": "resourceType",
          "type": "string",
          "info": "The resource type to be queried: Must be one of [EACCESS_SERVICE, OCH_SERVICE, L3VPN_SERVICE, LAG_SERVICE, L3VPN_ENDPOINT, ELAN_SERVICE, ELAN_ENDPOINT, IES_ENDPOINT, ELINE_SERVICE, ELINE_ENDPOINT, ODU_SERVICE, IES_SERVICE, LAG_ENDPOINT]",
          "required": true,
          "schema": {
            "title": "resourceType",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "integer",
                  "format": "int64"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«long»"
            }
          },
          "title": "ResponseData«long»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getResourceCount"
      },
      "task": true
    },
    {
      "name": "getServicesOnTunnel",
      "summary": "Query services using a tunnel",
      "description": "Query services using a tunnel",
      "input": [
        {
          "name": "tunnelUuid",
          "type": "string",
          "info": "The unique identifier of tunnel to query: string",
          "required": true,
          "schema": {
            "title": "tunnelUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      }
                    },
                    "title": "BaseService",
                    "description": "This object is a read only representation of a service"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseService»»"
            }
          },
          "title": "ResponseData«List«BaseService»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicesOnTunnel"
      },
      "task": true
    },
    {
      "name": "getV4ServicesTenantUuid",
      "summary": "getTenant",
      "description": "getTenant",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier for the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      }
                    },
                    "title": "BaseService",
                    "description": "This object is a read only representation of a service"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseService»»"
            }
          },
          "title": "ResponseData«List«BaseService»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4ServicesTenantUuid"
      },
      "task": true
    },
    {
      "name": "getTunnel",
      "summary": "Find a Tunnel",
      "description": "Find a Tunnel",
      "input": [
        {
          "name": "tunnelUuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "tunnelUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "availableBw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the available bandwidth on the service"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "cost": {
                      "type": "number",
                      "format": "double",
                      "description": "Allocation cost of the tunnel. For RSVP type tunnels, this value is the IGP metric. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for metric."
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "destinationEndpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "nodeId": {
                            "type": "string",
                            "description": "The ID of the NE"
                          },
                          "portId": {
                            "type": "string",
                            "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                          }
                        },
                        "title": "ServiceTunnelEndpoint",
                        "description": "A source and/or destination endpoint of the service-tunnel."
                      }
                    },
                    "destinationNodeId": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "hops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The number of hops of this tunnel. For RSVP type tunnels, this indicates the number of IGP hops. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for number of hops."
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "latency": {
                      "type": "number",
                      "format": "double",
                      "description": "The latency of the tunnel in microseconds. The value of 2147483647 indicates infinite latency on the tunnel."
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "ownership": {
                      "type": "object",
                      "properties": {
                        "consumable": {
                          "type": "boolean",
                          "description": "Whether the system is able to consume this resource"
                        },
                        "deletable": {
                          "type": "boolean",
                          "description": "Whether the system is able to delete this resource automatically due to a change at a higher or lower layer"
                        },
                        "modifiable": {
                          "type": "boolean",
                          "description": "Whether the system is able to modify this resource automatically due to a change at a higher or lower layer"
                        }
                      },
                      "title": "Ownership"
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "physicalLinks": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "bidirectional": {
                            "type": "boolean",
                            "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "attributeName": {
                                  "type": "string",
                                  "description": "custom attribute name"
                                },
                                "attributeValue": {
                                  "type": "string",
                                  "description": "custom attribute value"
                                }
                              },
                              "title": "CustomAttribute",
                              "description": "A custom attribute"
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "destinationId": {
                            "type": "string",
                            "description": "The id of the destination network element"
                          },
                          "destinationName": {
                            "type": "string",
                            "description": "The name of the destination network element"
                          },
                          "destinationPortId": {
                            "type": "string",
                            "description": "The id of the destination NNI port"
                          },
                          "destinationPortName": {
                            "type": "string",
                            "description": "The name of the destination NNI port"
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "context": {
                                  "type": "string",
                                  "description": "The entity type that is managing this external-id",
                                  "enum": [
                                    "NFM_T",
                                    "NFM_P",
                                    "NODE",
                                    "MDM",
                                    "NSP"
                                  ]
                                },
                                "id": {
                                  "type": "string",
                                  "description": "The local identifier used on the entity."
                                },
                                "location": {
                                  "type": "array",
                                  "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              },
                              "title": "ExternalId",
                              "description": "An external identifier to the NSP."
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "linkCost": {
                            "type": "object",
                            "properties": {
                              "cost": {
                                "type": "number",
                                "format": "double",
                                "description": "Allocation cost of the physical link"
                              },
                              "latency": {
                                "type": "number",
                                "format": "double",
                                "description": "The latency of the physical link in microseconds"
                              }
                            },
                            "title": "LinkCost"
                          },
                          "lxcontainer": {
                            "type": "object",
                            "properties": {
                              "lxinformationList": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "description": ""
                                }
                              }
                            },
                            "title": "LXContainer"
                          },
                          "lxpresent": {
                            "type": "boolean",
                            "description": "If there is a presence of an 1830 LX"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the physical link"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "sourceId": {
                            "type": "string",
                            "description": "The id of the source network element"
                          },
                          "sourceName": {
                            "type": "string",
                            "description": "The name of the source network element"
                          },
                          "sourcePortId": {
                            "type": "string",
                            "description": "The id of the source NNI port"
                          },
                          "sourcePortName": {
                            "type": "string",
                            "description": "The name of the source NNI port"
                          },
                          "srlgs": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "PhysicalLink",
                        "description": "A physical link represents a link connecting different network elements."
                      }
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "sourceEndpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "nodeId": {
                            "type": "string",
                            "description": "The ID of the NE"
                          },
                          "portId": {
                            "type": "string",
                            "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                          }
                        },
                        "title": "ServiceTunnelEndpoint",
                        "description": "A source and/or destination endpoint of the service-tunnel."
                      }
                    },
                    "sourceNodeId": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "steeringParameters": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "UrlSafeString"
                          }
                        },
                        "title": "SteeringParameter",
                        "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                      }
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    },
                    "tunnelType": {
                      "type": "string",
                      "description": "The type of the tunnel",
                      "enum": [
                        "sr_pcc_initiated",
                        "sr_isis",
                        "sr_te_strict",
                        "pcc_initiated",
                        "sr_te_loose",
                        "rsvp_strict",
                        "ldp",
                        "rsvp_loose",
                        "bgp",
                        "sr_ospf",
                        "gre"
                      ]
                    },
                    "underlyingTransport": {
                      "type": "string",
                      "description": "The transport of the tunnel",
                      "enum": [
                        "ODU",
                        "VXLAN",
                        "ERP",
                        "L2TPV3",
                        "IPV4",
                        "UNKNOWN",
                        "GRE",
                        "VLAN",
                        "ANY",
                        "MPLS"
                      ]
                    }
                  },
                  "title": "ServiceTunnel",
                  "description": "A tunnel is a logical group that allows the assigning of network resources"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ServiceTunnel»"
            }
          },
          "title": "ResponseData«ServiceTunnel»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTunnel"
      },
      "task": true
    },
    {
      "name": "updateTunnel",
      "summary": "Modify a tunnel",
      "description": "Modify a tunnel",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "A request object used to modify tunnel entities in the network.: {\"data\": {\"availableBw\": 123, \"ownership\": {\"consumable\": \"boolean\", \"deletable\": \"boolean\", \"modifiable\": \"boolean\"}, \"steeringParameters\": [{\"name\": {\"string\": \"string\"}}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "availableBw": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the available bandwidth on the service"
                  },
                  "ownership": {
                    "type": "object",
                    "properties": {
                      "consumable": {
                        "type": "boolean",
                        "description": "Whether the system is able to consume this resource"
                      },
                      "deletable": {
                        "type": "boolean",
                        "description": "Whether the system is able to delete this resource automatically due to a change at a higher or lower layer"
                      },
                      "modifiable": {
                        "type": "boolean",
                        "description": "Whether the system is able to modify this resource automatically due to a change at a higher or lower layer"
                      }
                    },
                    "title": "Ownership"
                  },
                  "steeringParameters": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "UrlSafeString"
                        }
                      },
                      "title": "SteeringParameter",
                      "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                    }
                  }
                },
                "title": "ServiceTunnelRequest",
                "description": "A request object used to modify tunnel entities in the network."
              }
            },
            "title": "Request«ServiceTunnelRequest»"
          }
        },
        {
          "name": "tunnelUuid",
          "type": "string",
          "info": "The unique identifier of the tunnel that is being modified: string",
          "required": true,
          "schema": {
            "title": "tunnelUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTunnel"
      },
      "task": true
    },
    {
      "name": "getTunnels",
      "summary": "Query all Tunnels",
      "description": "Query all Tunnels",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableBw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available bandwidth on the service"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "cost": {
                        "type": "number",
                        "format": "double",
                        "description": "Allocation cost of the tunnel. For RSVP type tunnels, this value is the IGP metric. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for metric."
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "destinationEndpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "nodeId": {
                              "type": "string",
                              "description": "The ID of the NE"
                            },
                            "portId": {
                              "type": "string",
                              "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                            }
                          },
                          "title": "ServiceTunnelEndpoint",
                          "description": "A source and/or destination endpoint of the service-tunnel."
                        }
                      },
                      "destinationNodeId": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "hops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The number of hops of this tunnel. For RSVP type tunnels, this indicates the number of IGP hops. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for number of hops."
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "The latency of the tunnel in microseconds. The value of 2147483647 indicates infinite latency on the tunnel."
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownership": {
                        "type": "object",
                        "properties": {
                          "consumable": {
                            "type": "boolean",
                            "description": "Whether the system is able to consume this resource"
                          },
                          "deletable": {
                            "type": "boolean",
                            "description": "Whether the system is able to delete this resource automatically due to a change at a higher or lower layer"
                          },
                          "modifiable": {
                            "type": "boolean",
                            "description": "Whether the system is able to modify this resource automatically due to a change at a higher or lower layer"
                          }
                        },
                        "title": "Ownership"
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "physicalLinks": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "bidirectional": {
                              "type": "boolean",
                              "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "title": "CustomAttribute",
                                "description": "A custom attribute"
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "destinationId": {
                              "type": "string",
                              "description": "The id of the destination network element"
                            },
                            "destinationName": {
                              "type": "string",
                              "description": "The name of the destination network element"
                            },
                            "destinationPortId": {
                              "type": "string",
                              "description": "The id of the destination NNI port"
                            },
                            "destinationPortName": {
                              "type": "string",
                              "description": "The name of the destination NNI port"
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "context": {
                                    "type": "string",
                                    "description": "The entity type that is managing this external-id",
                                    "enum": [
                                      "NFM_T",
                                      "NFM_P",
                                      "NODE",
                                      "MDM",
                                      "NSP"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "description": "The local identifier used on the entity."
                                  },
                                  "location": {
                                    "type": "array",
                                    "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                                    "items": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "title": "ExternalId",
                                "description": "An external identifier to the NSP."
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "linkCost": {
                              "type": "object",
                              "properties": {
                                "cost": {
                                  "type": "number",
                                  "format": "double",
                                  "description": "Allocation cost of the physical link"
                                },
                                "latency": {
                                  "type": "number",
                                  "format": "double",
                                  "description": "The latency of the physical link in microseconds"
                                }
                              },
                              "title": "LinkCost"
                            },
                            "lxcontainer": {
                              "type": "object",
                              "properties": {
                                "lxinformationList": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "description": ""
                                  }
                                }
                              },
                              "title": "LXContainer"
                            },
                            "lxpresent": {
                              "type": "boolean",
                              "description": "If there is a presence of an 1830 LX"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the physical link"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "sourceId": {
                              "type": "string",
                              "description": "The id of the source network element"
                            },
                            "sourceName": {
                              "type": "string",
                              "description": "The name of the source network element"
                            },
                            "sourcePortId": {
                              "type": "string",
                              "description": "The id of the source NNI port"
                            },
                            "sourcePortName": {
                              "type": "string",
                              "description": "The name of the source NNI port"
                            },
                            "srlgs": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "PhysicalLink",
                          "description": "A physical link represents a link connecting different network elements."
                        }
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "sourceEndpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "nodeId": {
                              "type": "string",
                              "description": "The ID of the NE"
                            },
                            "portId": {
                              "type": "string",
                              "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                            }
                          },
                          "title": "ServiceTunnelEndpoint",
                          "description": "A source and/or destination endpoint of the service-tunnel."
                        }
                      },
                      "sourceNodeId": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "steeringParameters": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "name"
                          ],
                          "properties": {
                            "name": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "UrlSafeString"
                            }
                          },
                          "title": "SteeringParameter",
                          "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                        }
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      },
                      "tunnelType": {
                        "type": "string",
                        "description": "The type of the tunnel",
                        "enum": [
                          "sr_pcc_initiated",
                          "sr_isis",
                          "sr_te_strict",
                          "pcc_initiated",
                          "sr_te_loose",
                          "rsvp_strict",
                          "ldp",
                          "rsvp_loose",
                          "bgp",
                          "sr_ospf",
                          "gre"
                        ]
                      },
                      "underlyingTransport": {
                        "type": "string",
                        "description": "The transport of the tunnel",
                        "enum": [
                          "ODU",
                          "VXLAN",
                          "ERP",
                          "L2TPV3",
                          "IPV4",
                          "UNKNOWN",
                          "GRE",
                          "VLAN",
                          "ANY",
                          "MPLS"
                        ]
                      }
                    },
                    "title": "ServiceTunnel",
                    "description": "A tunnel is a logical group that allows the assigning of network resources"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«ServiceTunnel»»"
            }
          },
          "title": "ResponseData«List«ServiceTunnel»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getTunnels"
      },
      "task": true
    },
    {
      "name": "getTunnelsOnService",
      "summary": "Query service tunnels used by service",
      "description": "Query service tunnels used by service",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of service: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableBw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available bandwidth on the service"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "cost": {
                        "type": "number",
                        "format": "double",
                        "description": "Allocation cost of the tunnel. For RSVP type tunnels, this value is the IGP metric. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for metric."
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "destinationEndpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "nodeId": {
                              "type": "string",
                              "description": "The ID of the NE"
                            },
                            "portId": {
                              "type": "string",
                              "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                            }
                          },
                          "title": "ServiceTunnelEndpoint",
                          "description": "A source and/or destination endpoint of the service-tunnel."
                        }
                      },
                      "destinationNodeId": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "hops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The number of hops of this tunnel. For RSVP type tunnels, this indicates the number of IGP hops. For VLAN type tunnels, the value is always 1. For tunnel types whose path cannot be determined an large value is returned for number of hops."
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "The latency of the tunnel in microseconds. The value of 2147483647 indicates infinite latency on the tunnel."
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownership": {
                        "type": "object",
                        "properties": {
                          "consumable": {
                            "type": "boolean",
                            "description": "Whether the system is able to consume this resource"
                          },
                          "deletable": {
                            "type": "boolean",
                            "description": "Whether the system is able to delete this resource automatically due to a change at a higher or lower layer"
                          },
                          "modifiable": {
                            "type": "boolean",
                            "description": "Whether the system is able to modify this resource automatically due to a change at a higher or lower layer"
                          }
                        },
                        "title": "Ownership"
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "physicalLinks": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "bidirectional": {
                              "type": "boolean",
                              "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "title": "CustomAttribute",
                                "description": "A custom attribute"
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "destinationId": {
                              "type": "string",
                              "description": "The id of the destination network element"
                            },
                            "destinationName": {
                              "type": "string",
                              "description": "The name of the destination network element"
                            },
                            "destinationPortId": {
                              "type": "string",
                              "description": "The id of the destination NNI port"
                            },
                            "destinationPortName": {
                              "type": "string",
                              "description": "The name of the destination NNI port"
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "context": {
                                    "type": "string",
                                    "description": "The entity type that is managing this external-id",
                                    "enum": [
                                      "NFM_T",
                                      "NFM_P",
                                      "NODE",
                                      "MDM",
                                      "NSP"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "description": "The local identifier used on the entity."
                                  },
                                  "location": {
                                    "type": "array",
                                    "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                                    "items": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "title": "ExternalId",
                                "description": "An external identifier to the NSP."
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "linkCost": {
                              "type": "object",
                              "properties": {
                                "cost": {
                                  "type": "number",
                                  "format": "double",
                                  "description": "Allocation cost of the physical link"
                                },
                                "latency": {
                                  "type": "number",
                                  "format": "double",
                                  "description": "The latency of the physical link in microseconds"
                                }
                              },
                              "title": "LinkCost"
                            },
                            "lxcontainer": {
                              "type": "object",
                              "properties": {
                                "lxinformationList": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "description": ""
                                  }
                                }
                              },
                              "title": "LXContainer"
                            },
                            "lxpresent": {
                              "type": "boolean",
                              "description": "If there is a presence of an 1830 LX"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the physical link"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "sourceId": {
                              "type": "string",
                              "description": "The id of the source network element"
                            },
                            "sourceName": {
                              "type": "string",
                              "description": "The name of the source network element"
                            },
                            "sourcePortId": {
                              "type": "string",
                              "description": "The id of the source NNI port"
                            },
                            "sourcePortName": {
                              "type": "string",
                              "description": "The name of the source NNI port"
                            },
                            "srlgs": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "PhysicalLink",
                          "description": "A physical link represents a link connecting different network elements."
                        }
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "sourceEndpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "nodeId": {
                              "type": "string",
                              "description": "The ID of the NE"
                            },
                            "portId": {
                              "type": "string",
                              "description": "The ID of the port. Only applicable for ODU, ERP, and VLAN hand-off Service Tunnels."
                            }
                          },
                          "title": "ServiceTunnelEndpoint",
                          "description": "A source and/or destination endpoint of the service-tunnel."
                        }
                      },
                      "sourceNodeId": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "steeringParameters": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "name"
                          ],
                          "properties": {
                            "name": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "UrlSafeString"
                            }
                          },
                          "title": "SteeringParameter",
                          "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                        }
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      },
                      "tunnelType": {
                        "type": "string",
                        "description": "The type of the tunnel",
                        "enum": [
                          "sr_pcc_initiated",
                          "sr_isis",
                          "sr_te_strict",
                          "pcc_initiated",
                          "sr_te_loose",
                          "rsvp_strict",
                          "ldp",
                          "rsvp_loose",
                          "bgp",
                          "sr_ospf",
                          "gre"
                        ]
                      },
                      "underlyingTransport": {
                        "type": "string",
                        "description": "The transport of the tunnel",
                        "enum": [
                          "ODU",
                          "VXLAN",
                          "ERP",
                          "L2TPV3",
                          "IPV4",
                          "UNKNOWN",
                          "GRE",
                          "VLAN",
                          "ANY",
                          "MPLS"
                        ]
                      }
                    },
                    "title": "ServiceTunnel",
                    "description": "A tunnel is a logical group that allows the assigning of network resources"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«ServiceTunnel»»"
            }
          },
          "title": "ResponseData«List«ServiceTunnel»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTunnelsOnService"
      },
      "task": true
    },
    {
      "name": "deleteServiceEndpoint",
      "summary": "Delete a service endpoint from a service",
      "description": "Delete a service endpoint from a service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be deleted: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteServiceEndpoint"
      },
      "task": true
    },
    {
      "name": "getEndpoints",
      "summary": "Query all endpoints associated to a service object",
      "description": "Query all endpoints associated to a service object",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier for the service to be queried: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service endpoint"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The identifier of the network element where the service endpoint resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network element to which this endpoint belongs"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "portAdminState": {
                        "type": "string",
                        "description": "The administrative state of port used by endpoint",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "portId": {
                        "type": "string",
                        "description": "The identifier of the port upon which the service endpoint resides"
                      },
                      "portName": {
                        "type": "string",
                        "description": "The name of the port upon which the service endpoint resides"
                      },
                      "portOperationalState": {
                        "type": "string",
                        "description": "The operational state of port used by endpoint",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The bandwidth of port used by endpoint"
                      },
                      "serviceId": {
                        "type": "string",
                        "description": "The identifier of the service that uses this endpoint"
                      }
                    },
                    "title": "BaseServiceEndpoint",
                    "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseServiceEndpoint»»"
            }
          },
          "title": "ResponseData«List«BaseServiceEndpoint»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEndpoints"
      },
      "task": true
    },
    {
      "name": "getV4ServicesUuid",
      "summary": "Find a service by a unique identifier",
      "description": "Find a service by a unique identifier",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "bidirectional",
                    "objective"
                  ],
                  "properties": {
                    "actualEndState": {
                      "type": "string",
                      "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bw": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the service."
                    },
                    "endpointExtensions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "connectedInner": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag of connected port"
                          },
                          "connectedOuter": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag of connected port"
                          },
                          "connectedPortId": {
                            "type": "string",
                            "description": "The uuid of the connected port"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "nniPort": {
                            "type": "object",
                            "description": "The nni-port attributes"
                          },
                          "uniPort": {
                            "type": "object",
                            "description": "The uni-port attributes"
                          }
                        },
                        "title": "L2EndPointExtension",
                        "description": "The L2 endpoint extension definition"
                      }
                    },
                    "endpoints": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "actualEndState": {
                            "type": "string",
                            "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                            "enum": [
                              "Saved",
                              "Deployed"
                            ]
                          },
                          "adminState": {
                            "type": "string",
                            "description": "The current administrative state of the entity",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "appId": {
                            "type": "string",
                            "description": "The client-defined, custom Application ID for the entity"
                          },
                          "customAttributes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "customAttributesTemplateId": {
                            "type": "string",
                            "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                          },
                          "description": {
                            "type": "string",
                            "description": "A textual description of the service."
                          },
                          "externalIds": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "id": {
                            "type": "string",
                            "description": "The unique identifier of the entity"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the service endpoint"
                          },
                          "neDeploymentState": {
                            "type": "string",
                            "description": "The current deployment state of the entity",
                            "enum": [
                              "DEPLOYED",
                              "NA",
                              "FAILED",
                              "UNKNOWN",
                              "PENDING"
                            ]
                          },
                          "neId": {
                            "type": "string",
                            "description": "The identifier of the network element where the service endpoint resides"
                          },
                          "neName": {
                            "type": "string",
                            "description": "The name of the network element to which this endpoint belongs"
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "The current operational state of the entity",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portAdminState": {
                            "type": "string",
                            "description": "The administrative state of port used by endpoint",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "portId": {
                            "type": "string",
                            "description": "The identifier of the port upon which the service endpoint resides"
                          },
                          "portName": {
                            "type": "string",
                            "description": "The name of the port upon which the service endpoint resides"
                          },
                          "portOperationalState": {
                            "type": "string",
                            "description": "The operational state of port used by endpoint",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "portSpeed": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The bandwidth of port used by endpoint"
                          },
                          "serviceId": {
                            "type": "string",
                            "description": "The identifier of the service that uses this endpoint"
                          }
                        },
                        "title": "BaseServiceEndpoint",
                        "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "groupId": {
                      "type": "string",
                      "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "lifeCycle": {
                      "type": "object",
                      "properties": {
                        "phase": {
                          "type": "string",
                          "description": "The phase of the life cycle object",
                          "enum": [
                            "Creation",
                            "Deployment",
                            "Activation",
                            "Planning"
                          ]
                        },
                        "reason": {
                          "type": "string",
                          "description": "The reason for the current phase/state of the life cycle object"
                        },
                        "state": {
                          "type": "string",
                          "description": "The state of the life cycle object",
                          "enum": [
                            "Delete",
                            "PartiallyDeployed",
                            "Deploying",
                            "Undeployed",
                            "Routing",
                            "Planned",
                            "Deployed",
                            "DeploymentFailed",
                            "WaitingForDeployment",
                            "RoutedAndSaved",
                            "RoutingFailed",
                            "Saved",
                            "Undeploy"
                          ]
                        }
                      },
                      "title": "LifeCycle",
                      "description": "The Life Cycle details for a given object."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in ms) to consider for the service."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the service"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nodeServiceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "pathProfileId": {
                      "type": "string",
                      "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                    },
                    "requestedEndState": {
                      "type": "string",
                      "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                      "enum": [
                        "Saved",
                        "Deployed"
                      ]
                    },
                    "reverseBW": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                    },
                    "serviceType": {
                      "type": "string",
                      "description": "The type of the service",
                      "enum": [
                        "ODU",
                        "TUNNEL",
                        "EACCESS",
                        "L2_EXTENSION_UNI",
                        "CLINE",
                        "L2_EXTENSION_NNI",
                        "L2_BACKHAUL",
                        "L2_DCI",
                        "PHYSICAL_LINK",
                        "LAG",
                        "ELAN",
                        "OCH",
                        "ELINE",
                        "IES",
                        "L3_VPN",
                        "L3_DCI"
                      ]
                    },
                    "templateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the template to apply to the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                    }
                  },
                  "title": "BaseService",
                  "description": "This object is a read only representation of a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BaseService»"
            }
          },
          "title": "ResponseData«BaseService»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4ServicesUuid"
      },
      "task": true
    },
    {
      "name": "deleteV4ServicesUuid",
      "summary": "Delete a service",
      "description": "Delete a service",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier of the service to be deleted: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteV4ServicesUuid"
      },
      "task": true
    },
    {
      "name": "getLink",
      "summary": "Get TE link. A link has a UUID, attributes, a source (node, termination-point) and a destination (n",
      "description": "Get TE link. A link has a UUID, attributes, a source (node, termination-point) and a destination (node, termination-point).",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "UUID: Identifier for a link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "destination": {
                      "type": "object",
                      "required": [
                        "destNode"
                      ],
                      "properties": {
                        "destNode": {
                          "type": "string",
                          "description": "Destination node identifier, must be in the same network."
                        },
                        "destTp": {
                          "type": "string",
                          "description": "Termination point within destination node that terminates the link."
                        }
                      },
                      "title": "Destination",
                      "description": "This container holds the logical destination of a particular link."
                    },
                    "linkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "LinkId",
                      "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                    },
                    "nspLink": {
                      "type": "object",
                      "properties": {
                        "linkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "linkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspLink",
                      "description": "Augmentation for NSP link"
                    },
                    "source": {
                      "type": "object",
                      "required": [
                        "sourceNode"
                      ],
                      "properties": {
                        "sourceNode": {
                          "type": "string",
                          "description": "Source node identifier, must be in same topology."
                        },
                        "sourceTp": {
                          "type": "string",
                          "description": "Termination point within source node that terminates the link."
                        }
                      },
                      "title": "Source",
                      "description": "This container holds the logical source of a particular link."
                    },
                    "supportingLink": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "linkRef": {
                            "type": "string",
                            "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                          },
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which underlay topology the supporting link is present."
                          }
                        },
                        "title": "SupportingLink"
                      }
                    }
                  },
                  "title": "Link",
                  "description": "Configuration parameters for NSP at link level"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Link»"
            }
          },
          "title": "ResponseData«Link»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLink"
      },
      "task": true
    },
    {
      "name": "patchLink",
      "summary": "Patch TE link by updating the configuration parameters. Supported configuration parameter(s): SRLG,",
      "description": "Patch TE link by updating the configuration parameters. Supported configuration parameter(s): SRLG, Latency, AdminStatus",
      "input": [
        {
          "name": "linkUuid",
          "type": "string",
          "info": "The unique identifier of the TE link: string",
          "required": true,
          "schema": {
            "title": "linkUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "TE link configuration grouping.: {\"data\": {\"bundledLinks\": {\"bundledLink\": \"object\"}, \"componentLinks\": {\"componentLink\": \"object\"}, \"teLinkAttributes\": {\"accessType\": \"Must be one of [point_to_point, multi_access]\", \"adminStatus\": \"Must be one of [testing, up, preparing_maintenance, down, maintenance]\", \"externalDomain\": {\"plugId\": 123, \"remoteTeLinkTpId\": \"object\", \"remoteTeNodeId\": \"object\"}, \"isAbstract\": }, \"name\": \"string\", \"performanceMetricThrottleContainer\": {\"performanceMetricThrottle\": \"object\"}, \"schedules\": {\"schedules\": \"object\"}, \"teLinkInfoAttributes\": {\"administrativeGroup\": \"object\", \"interfaceSwitchingCapabilityList\": \"object\", \"linkIndex\": 123, \"linkProtectionType\": \"Must be one of [enhanced, shared, extra_traffic, _1_plus_1, unprotected, _1_for_1]\", \"teLinkConnectivityAttributes\": \"object\"}, \"underlay\": {\"teLinkStateUnderlayAttributes\": \"object\", \"teLinkUnderlayAttributes\": \"object\", \"teTopologyHierarchy\": \"object\"}}, \"teLinkTemplate\": \"array\", \"template\": \"object\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "bundledLinks": {
                    "type": "object",
                    "properties": {
                      "bundledLink": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "desTpRef": {
                              "type": "string",
                              "description": "Reference to another TE termination point on the same destination node."
                            },
                            "sequence": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Identify the sequence in the bundle."
                            },
                            "srcTpRef": {
                              "type": "string",
                              "description": "Reference to another TE termination point on the same souruce node."
                            }
                          },
                          "title": "BundledLink"
                        }
                      }
                    },
                    "title": "BundledLinks",
                    "description": "A set of bundled links."
                  },
                  "componentLinks": {
                    "type": "object",
                    "properties": {
                      "componentLink": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "desInterfaceRef": {
                              "type": "string",
                              "description": "Reference to component link interface on the destinatioin node."
                            },
                            "sequence": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Identify the sequence in the bundle."
                            },
                            "srcInterfaceRef": {
                              "type": "string",
                              "description": "Reference to component link interface on the source node."
                            }
                          },
                          "title": "ComponentLink"
                        }
                      }
                    },
                    "title": "ComponentLinks",
                    "description": "A set of component links"
                  },
                  "teLinkAttributes": {
                    "type": "object",
                    "properties": {
                      "accessType": {
                        "type": "string",
                        "description": "Link access type, which can be point-to-point or multi-access.",
                        "enum": [
                          "point_to_point",
                          "multi_access"
                        ]
                      },
                      "adminStatus": {
                        "type": "string",
                        "description": "The administrative state of the link.",
                        "enum": [
                          "testing",
                          "up",
                          "preparing_maintenance",
                          "down",
                          "maintenance"
                        ]
                      },
                      "externalDomain": {
                        "type": "object",
                        "properties": {
                          "plugId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "A topology-wide unique number that identifies on the network a connectivity supporting a given inter-domain TE link. This is more flexible alternative to specifying remote-te-node-id and remote-te-link-tp-id, when the provider does not know remote-te-node-id and remote-te-link-tp-id or need to give client the flexibility to mix-n-match multiple topologies."
                          },
                          "remoteTeLinkTpId": {
                            "type": "object",
                            "description": "Remote TE link termination point identifier, used together with remote-te-node-id to identify the remote link termination point in a different domain."
                          },
                          "remoteTeNodeId": {
                            "type": "object",
                            "description": "Remote TE node identifier, used together with remote-te-link-id to identify the remote link termination point in a different domain."
                          }
                        },
                        "title": "ExternalDomain",
                        "description": "For an inter-domain link, specify the attributes of the remote end of link, to facilitate the signalling at local end."
                      },
                      "isAbstract": {
                        "type": "object",
                        "description": "Present if the link is abstract.",
                        "properties": {}
                      },
                      "name": {
                        "type": "string",
                        "description": "Link Name."
                      },
                      "performanceMetricThrottleContainer": {
                        "type": "object",
                        "properties": {
                          "performanceMetricThrottle": {
                            "type": "object",
                            "description": "Link performance information in real time."
                          }
                        },
                        "title": "PerformanceMetricThrottleContainer",
                        "description": "A container controlling performance metric throttle."
                      },
                      "schedules": {
                        "type": "object",
                        "properties": {
                          "schedules": {
                            "type": "object",
                            "description": "Container of a schedule list defining when a particular configuration takes effect."
                          }
                        },
                        "title": "Schedules",
                        "description": "A list of schedules defining when a particular configuration takes effect."
                      },
                      "teLinkInfoAttributes": {
                        "type": "object",
                        "properties": {
                          "administrativeGroup": {
                            "type": "object",
                            "description": "Administrative group or color of the link. This attribute covers both administrative group (defined in RFC3630, RFC5329, and RFC5305), and extended administrative group (defined in RFC7308)."
                          },
                          "interfaceSwitchingCapabilityList": {
                            "type": "object",
                            "description": "List of Interface Switching Capabilities Descriptors (ISCD)"
                          },
                          "linkIndex": {
                            "type": "integer",
                            "description": "The link identifier. If OSPF is used, this represents an ospfLsdbID. If IS-IS is used, this represents an isisLSPID. If a locally configured link is used, this object represents a unique value, which is locally defined in a router."
                          },
                          "linkProtectionType": {
                            "type": "string",
                            "description": "Link Protection Type desired for this link.",
                            "enum": [
                              "enhanced",
                              "shared",
                              "extra_traffic",
                              "_1_plus_1",
                              "unprotected",
                              "_1_for_1"
                            ]
                          },
                          "teLinkConnectivityAttributes": {
                            "type": "object",
                            "description": "Advertised TE connectivity attributes."
                          }
                        },
                        "title": "TeLinkInfoAttributes",
                        "description": "Advertised TE information attributes."
                      },
                      "underlay": {
                        "type": "object",
                        "properties": {
                          "teLinkStateUnderlayAttributes": {
                            "type": "object",
                            "description": "State attributes for te-link underlay."
                          },
                          "teLinkUnderlayAttributes": {
                            "type": "object",
                            "description": "Attributes for te-link underlay."
                          },
                          "teTopologyHierarchy": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "Underlay",
                        "description": "Attributes of the te-link underlay."
                      }
                    },
                    "title": "TeLinkAttributes",
                    "description": "Link attributes in a TE topology."
                  },
                  "teLinkTemplate": {
                    "type": "array",
                    "description": "The reference to a TE link template.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "template": {
                    "type": "object",
                    "title": "Template",
                    "description": "This feature indicates that the system supports template configuration."
                  }
                },
                "title": "TeLinkConfig",
                "description": "TE link configuration grouping."
              }
            },
            "title": "Request«TeLinkConfig»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "destination": {
                      "type": "object",
                      "required": [
                        "destNode"
                      ],
                      "properties": {
                        "destNode": {
                          "type": "string",
                          "description": "Destination node identifier, must be in the same network."
                        },
                        "destTp": {
                          "type": "string",
                          "description": "Termination point within destination node that terminates the link."
                        }
                      },
                      "title": "Destination",
                      "description": "This container holds the logical destination of a particular link."
                    },
                    "linkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "LinkId",
                      "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                    },
                    "nspLink": {
                      "type": "object",
                      "properties": {
                        "linkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "linkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspLink",
                      "description": "Augmentation for NSP link"
                    },
                    "source": {
                      "type": "object",
                      "required": [
                        "sourceNode"
                      ],
                      "properties": {
                        "sourceNode": {
                          "type": "string",
                          "description": "Source node identifier, must be in same topology."
                        },
                        "sourceTp": {
                          "type": "string",
                          "description": "Termination point within source node that terminates the link."
                        }
                      },
                      "title": "Source",
                      "description": "This container holds the logical source of a particular link."
                    },
                    "supportingLink": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "linkRef": {
                            "type": "string",
                            "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                          },
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which underlay topology the supporting link is present."
                          }
                        },
                        "title": "SupportingLink"
                      }
                    }
                  },
                  "title": "Link",
                  "description": "Configuration parameters for NSP at link level"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Link»"
            }
          },
          "title": "ResponseData«Link»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchLink"
      },
      "task": true
    },
    {
      "name": "getNetwork",
      "summary": "Get TE network. A network has a UUID, attributes, a list of nodes and a list of links.",
      "description": "Get TE network. A network has a UUID, attributes, a list of nodes and a list of links.",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "UUID: Identifier for a network: 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": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "link": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "destination": {
                            "type": "object",
                            "required": [
                              "destNode"
                            ],
                            "properties": {
                              "destNode": {
                                "type": "string",
                                "description": "Destination node identifier, must be in the same network."
                              },
                              "destTp": {
                                "type": "string",
                                "description": "Termination point within destination node that terminates the link."
                              }
                            },
                            "title": "Destination",
                            "description": "This container holds the logical destination of a particular link."
                          },
                          "linkId": {
                            "type": "object",
                            "properties": {
                              "uri": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "LinkId",
                            "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                          },
                          "nspLink": {
                            "type": "object",
                            "properties": {
                              "linkConfig": {
                                "type": "object",
                                "description": "Configuration data"
                              },
                              "linkState": {
                                "type": "object",
                                "description": "Operational state data"
                              }
                            },
                            "title": "NspLink",
                            "description": "Augmentation for NSP link"
                          },
                          "source": {
                            "type": "object",
                            "required": [
                              "sourceNode"
                            ],
                            "properties": {
                              "sourceNode": {
                                "type": "string",
                                "description": "Source node identifier, must be in same topology."
                              },
                              "sourceTp": {
                                "type": "string",
                                "description": "Termination point within source node that terminates the link."
                              }
                            },
                            "title": "Source",
                            "description": "This container holds the logical source of a particular link."
                          },
                          "supportingLink": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "linkRef": {
                                  "type": "string",
                                  "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                                },
                                "networkRef": {
                                  "type": "string",
                                  "description": "This leaf identifies in which underlay topology the supporting link is present."
                                }
                              },
                              "title": "SupportingLink"
                            }
                          }
                        },
                        "title": "Link",
                        "description": "Configuration parameters for NSP at link level"
                      }
                    },
                    "networkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "NetworkId",
                      "description": "Identifier for a network. The precise structure of the network-id will be up to an implementation. The identifier SHOULD be chosen such that the same network will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of network."
                    },
                    "networkTypes": {
                      "type": "object",
                      "title": "NetworkTypes",
                      "description": "Serves as an augmentation target. The network type is indicated through corresponding presence containers augmented into this container."
                    },
                    "node": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "nodeId": {
                            "type": "object",
                            "description": "Identifies a node uniquely within the containing network."
                          },
                          "nspNode": {
                            "type": "object",
                            "description": "Augmentation for NSP node"
                          },
                          "supportingNode": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "terminationPoint": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Node"
                      }
                    },
                    "nspNetwork": {
                      "type": "object",
                      "properties": {
                        "networkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "networkName": {
                          "type": "string",
                          "description": "The name of the network"
                        },
                        "networkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspNetwork",
                      "description": "Augmentation for NSP network"
                    },
                    "serverProvided": {
                      "type": "boolean",
                      "description": "Indicates whether the information concerning this particular network is populated by the server (server-provided true, the general case for network information discovered from the server), or whether it is configured by a client (server-provided true, possible e.g. for service overlays managed through a controller). Clients should not attempt to make modifications to network instances with server-provided set to true; when they do, they need to be aware that any modifications they make are subject to be reverted by the server. For servers that support NACM (Netconf Access Control Model), data node rules should ideally prevent write access by other clients to the network instance when server-provided is set to true."
                    },
                    "supportingNetwork": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "title": "Network",
                  "description": "Configuration parameters for NSP L3 topology"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Network»"
            }
          },
          "title": "ResponseData«Network»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNetwork"
      },
      "task": true
    },
    {
      "name": "getNetworks",
      "summary": "Get TE networks. A list of networks where each network has a UUID.",
      "description": "Get TE networks. A list of networks where each network has a UUID.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "network": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "link": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "destination": {
                                  "type": "object",
                                  "required": [
                                    "destNode"
                                  ],
                                  "properties": {
                                    "destNode": {
                                      "type": "string",
                                      "description": "Destination node identifier, must be in the same network."
                                    },
                                    "destTp": {
                                      "type": "string",
                                      "description": "Termination point within destination node that terminates the link."
                                    }
                                  },
                                  "title": "Destination",
                                  "description": "This container holds the logical destination of a particular link."
                                },
                                "linkId": {
                                  "type": "object",
                                  "properties": {
                                    "uri": {
                                      "type": "object",
                                      "description": ""
                                    }
                                  },
                                  "title": "LinkId",
                                  "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                                },
                                "nspLink": {
                                  "type": "object",
                                  "properties": {
                                    "linkConfig": {
                                      "type": "object",
                                      "description": "Configuration data"
                                    },
                                    "linkState": {
                                      "type": "object",
                                      "description": "Operational state data"
                                    }
                                  },
                                  "title": "NspLink",
                                  "description": "Augmentation for NSP link"
                                },
                                "source": {
                                  "type": "object",
                                  "required": [
                                    "sourceNode"
                                  ],
                                  "properties": {
                                    "sourceNode": {
                                      "type": "string",
                                      "description": "Source node identifier, must be in same topology."
                                    },
                                    "sourceTp": {
                                      "type": "string",
                                      "description": "Termination point within source node that terminates the link."
                                    }
                                  },
                                  "title": "Source",
                                  "description": "This container holds the logical source of a particular link."
                                },
                                "supportingLink": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "properties": {
                                      "linkRef": {
                                        "type": "string",
                                        "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                                      },
                                      "networkRef": {
                                        "type": "string",
                                        "description": "This leaf identifies in which underlay topology the supporting link is present."
                                      }
                                    },
                                    "title": "SupportingLink"
                                  }
                                }
                              },
                              "title": "Link",
                              "description": "Configuration parameters for NSP at link level"
                            }
                          },
                          "networkId": {
                            "type": "object",
                            "properties": {
                              "uri": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "NetworkId",
                            "description": "Identifier for a network. The precise structure of the network-id will be up to an implementation. The identifier SHOULD be chosen such that the same network will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of network."
                          },
                          "networkTypes": {
                            "type": "object",
                            "title": "NetworkTypes",
                            "description": "Serves as an augmentation target. The network type is indicated through corresponding presence containers augmented into this container."
                          },
                          "node": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "nodeId": {
                                  "type": "object",
                                  "description": "Identifies a node uniquely within the containing network."
                                },
                                "nspNode": {
                                  "type": "object",
                                  "description": "Augmentation for NSP node"
                                },
                                "supportingNode": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "description": ""
                                  }
                                },
                                "terminationPoint": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "description": ""
                                  }
                                }
                              },
                              "title": "Node"
                            }
                          },
                          "nspNetwork": {
                            "type": "object",
                            "properties": {
                              "networkConfig": {
                                "type": "object",
                                "description": "Configuration data"
                              },
                              "networkName": {
                                "type": "string",
                                "description": "The name of the network"
                              },
                              "networkState": {
                                "type": "object",
                                "description": "Operational state data"
                              }
                            },
                            "title": "NspNetwork",
                            "description": "Augmentation for NSP network"
                          },
                          "serverProvided": {
                            "type": "boolean",
                            "description": "Indicates whether the information concerning this particular network is populated by the server (server-provided true, the general case for network information discovered from the server), or whether it is configured by a client (server-provided true, possible e.g. for service overlays managed through a controller). Clients should not attempt to make modifications to network instances with server-provided set to true; when they do, they need to be aware that any modifications they make are subject to be reverted by the server. For servers that support NACM (Netconf Access Control Model), data node rules should ideally prevent write access by other clients to the network instance when server-provided is set to true."
                          },
                          "supportingNetwork": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "Network",
                        "description": "Configuration parameters for NSP L3 topology"
                      }
                    },
                    "nspNetworks": {
                      "type": "object",
                      "properties": {
                        "networksConfig": {
                          "type": "object",
                          "description": ""
                        },
                        "networksState": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "NspNetworks"
                    }
                  },
                  "title": "Networks"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Networks»"
            }
          },
          "title": "ResponseData«Networks»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getNetworks"
      },
      "task": true
    },
    {
      "name": "getNode",
      "summary": "Get TE node. A node has a UUID, attributes and a list of termination-points.",
      "description": "Get TE node. A node has a UUID, attributes and a list of termination-points.",
      "input": [
        {
          "name": "nodeId",
          "type": "string",
          "info": "UUID: Identifier for a node: string",
          "required": true,
          "schema": {
            "title": "nodeId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "nodeId": {
                      "type": "object",
                      "description": "Identifies a node uniquely within the containing network."
                    },
                    "nspNode": {
                      "type": "object",
                      "description": "Augmentation for NSP node"
                    },
                    "supportingNode": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "terminationPoint": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "description": ""
                      }
                    }
                  },
                  "title": "Node"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Node»"
            }
          },
          "title": "ResponseData«Node»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNode"
      },
      "task": true
    },
    {
      "name": "getTerminationPoint",
      "summary": "Get TE termination-point. A termination-point has a UUID and attributes.",
      "description": "Get TE termination-point. A termination-point has a UUID and attributes.",
      "input": [
        {
          "name": "tpId",
          "type": "string",
          "info": "UUID: Identifier for a termination-point: string",
          "required": true,
          "schema": {
            "title": "tpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "nspTerminationPoint": {
                      "type": "object",
                      "properties": {
                        "terminationPointConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "terminationPointState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspTerminationPoint",
                      "description": "Augmentation for NSP termination point"
                    },
                    "supportingTerminationPoint": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which topology the supporting termination point is present."
                          },
                          "nodeRef": {
                            "type": "string",
                            "description": "This leaf identifies in which node the supporting termination point is present."
                          },
                          "tpRef": {
                            "type": "string",
                            "description": "Reference to the underlay node, must be in a different topology"
                          }
                        },
                        "title": "SupportingTerminationPoint"
                      }
                    },
                    "tpId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "TpId",
                      "description": "An identifier for termination points (TPs) on a node. The precise structure of the tp-id will be up to the implementation. The identifier SHOULD be chosen such that the same termination point in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of termination point and/or the type of node that contains the termination point."
                    }
                  },
                  "title": "TerminationPoint"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TerminationPoint»"
            }
          },
          "title": "ResponseData«TerminationPoint»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTerminationPoint"
      },
      "task": true
    },
    {
      "name": "getL2Paths",
      "summary": "Get L2 Path",
      "description": "Get L2 Path",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The path calculation request definition: {\"data\": {\"destination\": {\"destNode\": \"string\", \"destTp\": \"string\"}, \"erpInstance\": 123, \"minBandwidth\": 123, \"source\": {\"sourceNode\": \"string\", \"sourceTp\": \"string\"}, \"uuid\": \"string\", \"vlanId\": {\"uint16\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "uuid"
                ],
                "properties": {
                  "destination": {
                    "type": "object",
                    "required": [
                      "destNode"
                    ],
                    "properties": {
                      "destNode": {
                        "type": "string",
                        "description": "Destination node identifier, must be in the same network."
                      },
                      "destTp": {
                        "type": "string",
                        "description": "Termination point within destination node that terminates the link."
                      }
                    },
                    "title": "Destination",
                    "description": "This container holds the logical destination of a particular link."
                  },
                  "erpInstance": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Instance number of ERP "
                  },
                  "minBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum bandwidth to maintain for the service"
                  },
                  "source": {
                    "type": "object",
                    "required": [
                      "sourceNode"
                    ],
                    "properties": {
                      "sourceNode": {
                        "type": "string",
                        "description": "Source node identifier, must be in same topology."
                      },
                      "sourceTp": {
                        "type": "string",
                        "description": "Termination point within source node that terminates the link."
                      }
                    },
                    "title": "Source",
                    "description": "This container holds the logical source of a particular link."
                  },
                  "uuid": {
                    "type": "string",
                    "description": "The UUID of the service "
                  },
                  "vlanId": {
                    "type": "object",
                    "properties": {
                      "uint16": {
                        "type": "integer",
                        "format": "int32"
                      }
                    },
                    "title": "Vlanid",
                    "description": "The 12-bit VLAN-ID used in the VLAN Tag header."
                  }
                },
                "title": "PathSearchRequest",
                "description": "The path calculation request definition"
              }
            },
            "title": "Request«PathSearchRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "isHetrogenous": {
                      "type": "boolean",
                      "description": "True if the path is hetrogenous "
                    },
                    "methodType": {
                      "type": "string",
                      "description": "Type of Path Search",
                      "enum": [
                        "PATH_SEARCH",
                        "RING_COMPLETION"
                      ]
                    },
                    "pathNumber": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Index of the Path"
                    },
                    "routeList": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "accessLtpId": {
                            "type": "object",
                            "properties": {
                              "ipAddress": {
                                "type": "object",
                                "properties": {
                                  "ipv4Address": {
                                    "type": "object",
                                    "description": ""
                                  },
                                  "ipv6Address": {
                                    "type": "object",
                                    "description": ""
                                  }
                                },
                                "title": "IpAddress",
                                "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                              },
                              "uint32": {
                                "type": "integer",
                                "format": "int64"
                              }
                            },
                            "title": "TeTpId",
                            "description": "An identifier for a TE link endpoint on a node. This attribute is mapped to local or remote link identifier in RFC3630 and RFC5305."
                          },
                          "accessNodeId": {
                            "type": "object",
                            "properties": {
                              "dottedQuad": {
                                "type": "object",
                                "properties": {
                                  "string": {
                                    "type": "string"
                                  }
                                },
                                "title": "DottedQuad",
                                "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                              }
                            },
                            "title": "TeNodeId",
                            "description": "An identifier for a node in a topology. The identifier is represented as 32-bit unsigned integer in the dotted-quad notation. This attribute is mapped to Router ID in RFC3630, RFC5329, RFC5305, and RFC6119."
                          },
                          "bandwidthProfiles": {
                            "type": "object",
                            "properties": {
                              "egressBandwidthProfileName": {
                                "type": "string",
                                "description": "Name of the bandwidth profile used in the egress direction."
                              },
                              "ingressBandwidthProfileName": {
                                "type": "string",
                                "description": "Name of the bandwidth profile used in the ingress direction."
                              },
                              "ingressEgressBandwidthProfileName": {
                                "type": "string",
                                "description": "Name of the bandwidth profile."
                              }
                            },
                            "title": "BandwidthProfiles",
                            "description": "A grouping which represent bandwidth profile configuration."
                          },
                          "baseEndpointRequest": {
                            "type": "object",
                            "properties": {
                              "adminState": {
                                "type": "string",
                                "description": "The current administrative state of the entity",
                                "enum": [
                                  "MAINTENANCE",
                                  "DOWN",
                                  "UP"
                                ]
                              },
                              "appId": {
                                "type": "string",
                                "description": "The client-defined, custom Application ID for the entity"
                              },
                              "customAttributes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "attributeName": {
                                      "type": "string",
                                      "description": "custom attribute name"
                                    },
                                    "attributeValue": {
                                      "type": "string",
                                      "description": "custom attribute value"
                                    }
                                  },
                                  "title": "CustomAttribute",
                                  "description": "A custom attribute"
                                }
                              },
                              "customAttributesTemplateId": {
                                "type": "string",
                                "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                              },
                              "description": {
                                "type": "string",
                                "description": "A textual description of the endpoint."
                              },
                              "id": {
                                "type": "string",
                                "description": "The UUID of the port"
                              },
                              "name": {
                                "type": "string",
                                "description": "The name of the endpoint"
                              },
                              "readOnly": {
                                "type": "boolean",
                                "description": "Specifies whether or not this request is read-only"
                              }
                            },
                            "title": "BaseEndpointRequest",
                            "description": "All endpoints type definition"
                          },
                          "outerTag": {
                            "type": "object",
                            "properties": {
                              "vlanClassification": {
                                "type": "object",
                                "properties": {
                                  "tagType": {
                                    "type": "object",
                                    "description": "The tag type used for VLAN classification."
                                  },
                                  "vlanRange": {
                                    "type": "object",
                                    "description": "List of VLAN ID values."
                                  },
                                  "vlanValue": {
                                    "type": "object",
                                    "description": "VLAN ID value."
                                  }
                                },
                                "title": "VlanClassification",
                                "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                              }
                            },
                            "title": "VlanClassificationOuterTag",
                            "description": "Classifies traffic using the outermost VLAN tag."
                          },
                          "secondTag": {
                            "type": "object",
                            "properties": {
                              "vlanClassification": {
                                "type": "object",
                                "properties": {
                                  "tagType": {
                                    "type": "object",
                                    "description": "The tag type used for VLAN classification."
                                  },
                                  "vlanRange": {
                                    "type": "object",
                                    "description": "List of VLAN ID values."
                                  },
                                  "vlanValue": {
                                    "type": "object",
                                    "description": "VLAN ID value."
                                  }
                                },
                                "title": "VlanClassification",
                                "description": "A grouping which represents classification on an 802.1Q VLAN tag."
                              }
                            },
                            "title": "VlanClassificationSecondTag",
                            "description": "Classifies traffic using the second outermost VLAN tag."
                          },
                          "serviceClassificationType": {
                            "type": "object",
                            "title": "ServiceClassificationType",
                            "description": "Service classification."
                          },
                          "splitHorizonGroup": {
                            "type": "string",
                            "description": "Identify a split horizon group"
                          },
                          "vlanOperations": {
                            "type": "object",
                            "properties": {
                              "asymmetricalOperation": {
                                "type": "object",
                                "properties": {
                                  "egress": {
                                    "type": "object",
                                    "description": "Egress operations"
                                  },
                                  "ingress": {
                                    "type": "object",
                                    "description": "Ingress operations"
                                  }
                                },
                                "title": "AsymmetricalOperation",
                                "description": "Asymmetrical operations"
                              },
                              "symmetricalOperation": {
                                "type": "object",
                                "properties": {
                                  "vlanOperations": {
                                    "type": "object",
                                    "description": "A grouping which represents VLAN operations."
                                  }
                                },
                                "title": "SymmetricalOperation",
                                "description": "Symmetrical operations. Expressed in the ingress direction, but the reverse operation is applied to egress traffic"
                              }
                            },
                            "title": "NspEthtSvcAccessParametersVlanOperations"
                          }
                        },
                        "title": "NspEthtSvcAccessParameters",
                        "description": "ETH transport services access parameters"
                      }
                    },
                    "sourceService": {
                      "type": "string",
                      "description": "The UUID of the service "
                    },
                    "uuid": {
                      "type": "string",
                      "description": "The UUID of the service "
                    }
                  },
                  "title": "BackhaulPath"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«BackhaulPath»"
            }
          },
          "title": "ResponseData«BackhaulPath»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2Paths"
      },
      "task": true
    },
    {
      "name": "getAmiVersionTemplates",
      "summary": "Fetch the template global names for all AMIs, grouped by AMI",
      "description": "Fetch the template global names for all AMIs, grouped by AMI",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "amiName": {
                        "type": "string",
                        "description": "AMI name"
                      },
                      "amiVersion": {
                        "type": "string",
                        "description": "This is expressed as a semantic version number of the form: x.y.z where: * x corresponds to the major version, * y corresponds to a minor version, * z corresponds to a patch version. AMI version in the format x.y.z where This version corresponds to the model file within which it is defined, and does not cover the whole set of OpenConfig models. Where several modules are used to build up a single block of functionality, the same module version is specified across each file that makes up the module. A major version number of 0 indicates that this model is still in development (whether within OpenConfig or with industry partners), and is potentially subject to change. Following a release of major version 1, all modules will increment major revision number where backwards incompatible changes to the model are made. The minor version is changed when features are added to the model that do not impact current clients use of the model. The patch-level version is incremented when non-feature changes (such as bugfixes or clarifications to human-readable descriptions that do not impact model functionality) are made that maintain backwards compatibility."
                      },
                      "globalTemplateNames": {
                        "type": "array",
                        "description": "List of global template names",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "title": "AmiNameVersionTemplates",
                    "description": "Grouping for each AMI with available global templates"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«AmiNameVersionTemplates»»"
            }
          },
          "title": "ResponseData«List«AmiNameVersionTemplates»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAmiVersionTemplates"
      },
      "task": true
    },
    {
      "name": "getAmisVersions",
      "summary": "Fetch the AMIs and the versions.",
      "description": "Fetch the AMIs and the versions.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "amiName": {
                        "type": "string",
                        "description": "AMI name"
                      },
                      "amiVersions": {
                        "type": "array",
                        "description": "AMI versions",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "title": "AmiNameVersions",
                    "description": "AMI Name Versions"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«AmiNameVersions»»"
            }
          },
          "title": "ResponseData«List«AmiNameVersions»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAmisVersions"
      },
      "task": true
    },
    {
      "name": "getAllAugmentationMeta",
      "summary": "Query all Augmentation Meta Infos",
      "description": "Query all Augmentation Meta Infos",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "pathName",
                      "templateName"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "The unique identifier for the Augmentation Meta"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "The hierarchy for a given yang entity in the following format <yang-root>:<yang hierarchy> eg., nsd-service:/services/elan-sites/site/config This information is used to find the appropriate JSON which corresponds to the given ne-id, ami-name, ami-version, template-name. This field has to be encoded to handle the special characters."
                      },
                      "templateName": {
                        "type": "string",
                        "description": "The global name of the template"
                      }
                    },
                    "title": "AugmentationMetaInput",
                    "description": "Augmentation meta input parameters for given hierarchy and template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«AugmentationMetaInput»»"
            }
          },
          "title": "ResponseData«List«AugmentationMetaInput»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllAugmentationMeta"
      },
      "task": true
    },
    {
      "name": "createAugmentationMeta",
      "summary": "Create an Augmentation Meta",
      "description": "Create an Augmentation Meta",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Request to update the JSON augmentation meta information for a given hierarchy and template.: {\"data\": {\"augmentationMetaInput\": {\"id\": \"string\", \"pathName\": \"string\", \"templateName\": \"string\"}, \"augmentationMetaJsonFileName\": {\"jsonFileName\": \"string\"}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "augmentationMetaInput": {
                    "type": "object",
                    "required": [
                      "pathName",
                      "templateName"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "The unique identifier for the Augmentation Meta"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "The hierarchy for a given yang entity in the following format <yang-root>:<yang hierarchy> eg., nsd-service:/services/elan-sites/site/config This information is used to find the appropriate JSON which corresponds to the given ne-id, ami-name, ami-version, template-name. This field has to be encoded to handle the special characters."
                      },
                      "templateName": {
                        "type": "string",
                        "description": "The global name of the template"
                      }
                    },
                    "title": "AugmentationMetaInput",
                    "description": "Augmentation meta input parameters for given hierarchy and template"
                  },
                  "augmentationMetaJsonFileName": {
                    "type": "object",
                    "properties": {
                      "jsonFileName": {
                        "type": "string",
                        "description": "The json file name"
                      }
                    },
                    "title": "AugmentationMetaJsonFileName",
                    "description": "Json file name to read the json from the file for Augmentation Meta."
                  }
                },
                "title": "AugmentationMeta",
                "description": "Request to update the JSON augmentation meta information for a given hierarchy and template."
              }
            },
            "title": "Request«AugmentationMeta»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "augmentationMetaInput": {
                      "type": "object",
                      "required": [
                        "pathName",
                        "templateName"
                      ],
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "The unique identifier for the Augmentation Meta"
                        },
                        "pathName": {
                          "type": "string",
                          "description": "The hierarchy for a given yang entity in the following format <yang-root>:<yang hierarchy> eg., nsd-service:/services/elan-sites/site/config This information is used to find the appropriate JSON which corresponds to the given ne-id, ami-name, ami-version, template-name. This field has to be encoded to handle the special characters."
                        },
                        "templateName": {
                          "type": "string",
                          "description": "The global name of the template"
                        }
                      },
                      "title": "AugmentationMetaInput",
                      "description": "Augmentation meta input parameters for given hierarchy and template"
                    },
                    "augmentationMetaJsonFileName": {
                      "type": "object",
                      "properties": {
                        "jsonFileName": {
                          "type": "string",
                          "description": "The json file name"
                        }
                      },
                      "title": "AugmentationMetaJsonFileName",
                      "description": "Json file name to read the json from the file for Augmentation Meta."
                    }
                  },
                  "title": "AugmentationMeta",
                  "description": "Request to update the JSON augmentation meta information for a given hierarchy and template."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«AugmentationMeta»"
            }
          },
          "title": "ResponseData«AugmentationMeta»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createAugmentationMeta"
      },
      "task": true
    },
    {
      "name": "updateAugmentationMeta",
      "summary": "Modify an Augmentation Meta",
      "description": "Modify an Augmentation Meta",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Json file name to read the json from the file for Augmentation Meta.: {\"data\": {\"jsonFileName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "jsonFileName": {
                    "type": "string",
                    "description": "The json file name"
                  }
                },
                "title": "AugmentationMetaJsonFileName",
                "description": "Json file name to read the json from the file for Augmentation Meta."
              }
            },
            "title": "Request«AugmentationMetaJsonFileName»"
          }
        },
        {
          "name": "id",
          "type": "string",
          "info": "The unique ID of the augmentation-meta that is being modified: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "augmentationMetaInput": {
                      "type": "object",
                      "required": [
                        "pathName",
                        "templateName"
                      ],
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "The unique identifier for the Augmentation Meta"
                        },
                        "pathName": {
                          "type": "string",
                          "description": "The hierarchy for a given yang entity in the following format <yang-root>:<yang hierarchy> eg., nsd-service:/services/elan-sites/site/config This information is used to find the appropriate JSON which corresponds to the given ne-id, ami-name, ami-version, template-name. This field has to be encoded to handle the special characters."
                        },
                        "templateName": {
                          "type": "string",
                          "description": "The global name of the template"
                        }
                      },
                      "title": "AugmentationMetaInput",
                      "description": "Augmentation meta input parameters for given hierarchy and template"
                    },
                    "augmentationMetaJsonFileName": {
                      "type": "object",
                      "properties": {
                        "jsonFileName": {
                          "type": "string",
                          "description": "The json file name"
                        }
                      },
                      "title": "AugmentationMetaJsonFileName",
                      "description": "Json file name to read the json from the file for Augmentation Meta."
                    }
                  },
                  "title": "AugmentationMeta",
                  "description": "Request to update the JSON augmentation meta information for a given hierarchy and template."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«AugmentationMeta»"
            }
          },
          "title": "ResponseData«AugmentationMeta»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateAugmentationMeta"
      },
      "task": true
    },
    {
      "name": "deleteAugmentationMeta",
      "summary": "Delete an Augmentation meta",
      "description": "Delete an Augmentation meta",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The unique ID of the augmentation-meta that is being deleted: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteAugmentationMeta"
      },
      "task": true
    },
    {
      "name": "getMediationAugmentation",
      "summary": "This action is to fetch the meta information of the passthrough attributes that could be provided d",
      "description": "This action is to fetch the meta information of the passthrough attributes that could be provided during a template invocation. The returned information would be a JSON describing the attributes, their types, and optional constraint information",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Mediation Augmentation Request: {\"data\": {\"neId\": \"string\", \"pathName\": \"string\", \"serviceType\": \"Must be one of [ODU, TUNNEL, EACCESS, L2_EXTENSION_UNI, CLINE, L2_EXTENSION_NNI, L2_BACKHAUL, L2_DCI, PHYSICAL_LINK, LAG, ELAN, OCH, ELINE, IES, L3_VPN, L3_DCI]\", \"templateId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "neId",
                  "pathName"
                ],
                "properties": {
                  "neId": {
                    "type": "string",
                    "description": "The Network Element identifier"
                  },
                  "pathName": {
                    "type": "string",
                    "description": "The hierarchy for a given yang entity in the following format <yang-root>:<yang hierarchy> eg., nsd-service:/services/elan-sites/site/config This information is used to find the appropriate JSON which corresponds to the given ne-id, ami-name, ami-version, template-name. This field has to be encoded to handle the special characters."
                  },
                  "serviceType": {
                    "type": "string",
                    "description": "The type of the service",
                    "enum": [
                      "ODU",
                      "TUNNEL",
                      "EACCESS",
                      "L2_EXTENSION_UNI",
                      "CLINE",
                      "L2_EXTENSION_NNI",
                      "L2_BACKHAUL",
                      "L2_DCI",
                      "PHYSICAL_LINK",
                      "LAG",
                      "ELAN",
                      "OCH",
                      "ELINE",
                      "IES",
                      "L3_VPN",
                      "L3_DCI"
                    ]
                  },
                  "templateId": {
                    "type": "string",
                    "description": "The identifier of the template associated to the augmentation."
                  }
                },
                "title": "MediationAugmentationRequest",
                "description": "Mediation Augmentation Request"
              }
            },
            "title": "Request«MediationAugmentationRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getMediationAugmentation"
      },
      "task": true
    },
    {
      "name": "fetchLspList",
      "summary": "Fetch RSVP or SR-TE LSP list which discovered by SDN through device management NFMP or MDM",
      "description": "Fetch RSVP or SR-TE LSP list which discovered by SDN through device management NFMP or MDM",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IDs: List of unique LSP identifiers: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "externalId": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the LSP"
                      },
                      "lspName": {
                        "type": "string",
                        "description": "LSP name"
                      },
                      "measuredBandwidth": {
                        "type": "integer",
                        "description": "Measured bandwidth on active LSP path"
                      },
                      "paths": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "administrativeFailureErrorCode": {
                              "type": "string",
                              "description": "The error code when administrative operation is failed",
                              "enum": [
                                "INVALID_PLSPID",
                                "PROTO_DISCONNECTED",
                                "PATH_NAME_IN_USE",
                                "UNACCEPTABLE_PARAM",
                                "VSR_NOT_EXSIST",
                                "PCC_NOT_CAPABLE",
                                "PATH_NOT_FOUND",
                                "NSP_INTERNAL",
                                "UNDEFINED_PATH_ERR",
                                "PCE_NOT_FOUND",
                                "ADMIN_DOWN",
                                "NO_ERROR",
                                "PCC_DISCONNECTED",
                                "UNKNOWN_REASON",
                                "SRC_NOT_EXIST",
                                "NO_RESPONSE",
                                "PCC_INTERNAL_ERROR",
                                "VSR_NOT_CAPABLE",
                                "INTERNAL_ERROR",
                                "LSP_BAD_PARAM",
                                "SYNC_DELETE",
                                "SRC_NOT_UNIQUE",
                                "UNKNOWN_PLSPID",
                                "SIGNALLING",
                                "LIMIT_RCHD",
                                "PCC_NOT_EXIST",
                                "PCC_ADMIN_DOWN"
                              ]
                            },
                            "administrativeState": {
                              "type": "string",
                              "description": "Path administrative state",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "computationState": {
                              "type": "string",
                              "description": "Path computation state",
                              "enum": [
                                "PATH_NOT_FOUND",
                                "PATH_ERROR",
                                "PATH_FOUND",
                                "UNKNOWN",
                                "PATH_NOT_COMPUTED"
                              ]
                            },
                            "computedHops": {
                              "type": "object",
                              "description": "Path computed hops. Explicit Route Objects (ERO)"
                            },
                            "creationType": {
                              "type": "string",
                              "description": "Path creation origin",
                              "enum": [
                                "PROVISIONED",
                                "REQUESTED",
                                "UNKNOWN",
                                "INITIATED",
                                "DISCOVERED"
                              ]
                            },
                            "destinationAddress": {
                              "type": "object",
                              "description": "Path destination IP address"
                            },
                            "destinationId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the destination topology link/tp"
                            },
                            "destinationNetworkName": {
                              "type": "array",
                              "description": "Path destination network topology name",
                              "items": {
                                "type": "string"
                              }
                            },
                            "latency": {
                              "type": "number",
                              "format": "double",
                              "description": "Path latency"
                            },
                            "lifecycleState": {
                              "type": "string",
                              "description": "Path lifecycle state",
                              "enum": [
                                "Delete",
                                "PartiallyDeployed",
                                "Deploying",
                                "Undeployed",
                                "Routing",
                                "Planned",
                                "Deployed",
                                "DeploymentFailed",
                                "WaitingForDeployment",
                                "RoutedAndSaved",
                                "RoutingFailed",
                                "Saved",
                                "Undeploy"
                              ]
                            },
                            "lspId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the parent LSP"
                            },
                            "maintenanceAffected": {
                              "type": "string",
                              "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                              "enum": [
                                "MAINTENANCE_CLEAR",
                                "HOPS_IN_MAINTENANCE",
                                "NONE"
                              ]
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "Path operational state",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "ownershipState": {
                              "type": "object",
                              "description": "Path ownership state"
                            },
                            "paramsConfig": {
                              "type": "object",
                              "description": "Path parameters configuration"
                            },
                            "paramsState": {
                              "type": "object",
                              "description": "Path parameters state"
                            },
                            "pathErrorCode": {
                              "type": "string",
                              "description": "The error code of path status",
                              "enum": [
                                "INVALID_PLSPID",
                                "PROTO_DISCONNECTED",
                                "PATH_NAME_IN_USE",
                                "UNACCEPTABLE_PARAM",
                                "VSR_NOT_EXSIST",
                                "PCC_NOT_CAPABLE",
                                "PATH_NOT_FOUND",
                                "NSP_INTERNAL",
                                "UNDEFINED_PATH_ERR",
                                "PCE_NOT_FOUND",
                                "ADMIN_DOWN",
                                "NO_ERROR",
                                "PCC_DISCONNECTED",
                                "UNKNOWN_REASON",
                                "SRC_NOT_EXIST",
                                "NO_RESPONSE",
                                "PCC_INTERNAL_ERROR",
                                "VSR_NOT_CAPABLE",
                                "INTERNAL_ERROR",
                                "LSP_BAD_PARAM",
                                "SYNC_DELETE",
                                "SRC_NOT_UNIQUE",
                                "UNKNOWN_PLSPID",
                                "SIGNALLING",
                                "LIMIT_RCHD",
                                "PCC_NOT_EXIST",
                                "PCC_ADMIN_DOWN"
                              ]
                            },
                            "pathId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the path"
                            },
                            "pathName": {
                              "type": "string",
                              "description": "Path name"
                            },
                            "pathType": {
                              "type": "string",
                              "description": "Path type denoting signaling type",
                              "enum": [
                                "SRTE",
                                "UNKNOWN",
                                "RSVP"
                              ]
                            },
                            "protectionState": {
                              "type": "string",
                              "description": "Path protection/redundancy activity state",
                              "enum": [
                                "ACTIVE",
                                "INACTIVE",
                                "UNKNOWN"
                              ]
                            },
                            "protectionType": {
                              "type": "string",
                              "description": "Path protection/redundancy type",
                              "enum": [
                                "SECONDARY",
                                "STANDBY",
                                "PRIMARY",
                                "UNKNOWN"
                              ]
                            },
                            "provisionedHops": {
                              "type": "object",
                              "description": "Path provisioned hops. Include Route Objects (IRO)"
                            },
                            "recordedHops": {
                              "type": "object",
                              "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                            },
                            "sourceAddress": {
                              "type": "object",
                              "description": "Path source IP address"
                            },
                            "sourceId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the source topology link/tp"
                            },
                            "sourceNetworkName": {
                              "type": "array",
                              "description": "Path source network topology name",
                              "items": {
                                "type": "string"
                              }
                            },
                            "sourceRouterAddress": {
                              "type": "object",
                              "description": "Path source router IP address"
                            },
                            "tunnelId": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path tunnel identifier"
                            }
                          },
                          "title": "LspPath",
                          "description": "LSP path"
                        }
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "LSP tunnel identifier"
                      }
                    },
                    "title": "Lsp",
                    "description": "MPLS LSP"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Lsp»»"
            }
          },
          "title": "ResponseData«List«Lsp»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/fetchLspList"
      },
      "task": true
    },
    {
      "name": "createLspPath",
      "summary": "Asynchronous API to create MPLS LSP path (PCE Initiated only)",
      "description": "Asynchronous API to create MPLS LSP path (PCE Initiated only)",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "lspPathConfigRequest: {\"data\": {\"administrativeState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"creationType\": \"Must be one of [PROVISIONED, REQUESTED, UNKNOWN, INITIATED, DISCOVERED]\", \"destinationAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"paramsConfig\": {\"pathParams\": {\"adminGroupExcludeAny\": \"object\", \"adminGroupIncludeAll\": \"object\", \"adminGroupIncludeAny\": \"object\", \"bandwidth\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"msd\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfile\": \"object\", \"pathProfileOverride\": \"object\", \"setupPriority\": 123, \"templateId\": 123}}, \"pathName\": \"string\", \"pathType\": \"Must be one of [SRTE, UNKNOWN, RSVP]\", \"sourceAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"sourceRouterAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "creationType",
                  "destinationAddress",
                  "pathName",
                  "pathType",
                  "sourceAddress",
                  "sourceRouterAddress"
                ],
                "properties": {
                  "administrativeState": {
                    "type": "string",
                    "description": "Path administrative state",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "creationType": {
                    "type": "string",
                    "description": "Path creation origin",
                    "enum": [
                      "PROVISIONED",
                      "REQUESTED",
                      "UNKNOWN",
                      "INITIATED",
                      "DISCOVERED"
                    ]
                  },
                  "destinationAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "paramsConfig": {
                    "type": "object",
                    "properties": {
                      "pathParams": {
                        "type": "object",
                        "properties": {
                          "adminGroupExcludeAny": {
                            "type": "object",
                            "description": "all of the admin group must be absent."
                          },
                          "adminGroupIncludeAll": {
                            "type": "object",
                            "description": "All of the admin groups must be present."
                          },
                          "adminGroupIncludeAny": {
                            "type": "object",
                            "description": "One or more of the admin groups must be present."
                          },
                          "bandwidth": {
                            "type": "integer",
                            "description": "Path bandwidth capacity. Units in Kbps"
                          },
                          "maxCost": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum cost constraint"
                          },
                          "maxHops": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum hops constraint. 0 and 255 means no limit."
                          },
                          "maxLatency": {
                            "type": "number",
                            "format": "double",
                            "description": "Path maximum latency constraint"
                          },
                          "maxTeMetric": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum TE metric constraint"
                          },
                          "msd": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum SID depth. 0 means no MSD."
                          },
                          "objective": {
                            "type": "string",
                            "description": "Path metric objective",
                            "enum": [
                              "TE_METRIC",
                              "COST",
                              "DISTANCE",
                              "STAR_WEIGHT",
                              "LATENCY",
                              "HOPS"
                            ]
                          },
                          "pathProfile": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "pathProfileOverride": {
                            "type": "object",
                            "description": "Path computation profile override"
                          },
                          "setupPriority": {
                            "type": "integer",
                            "format": "int32",
                            "description": "Path setup priority from 0 to 7. Value 0 is the highest priority"
                          },
                          "templateId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "MPLS path template ID (PCE Initiated only)"
                          }
                        },
                        "title": "PathParams",
                        "description": "LSP path parameters"
                      }
                    },
                    "title": "LspPathConfigRequestParamsConfig",
                    "description": "Path parameters configuration"
                  },
                  "pathName": {
                    "type": "string",
                    "description": "Path name"
                  },
                  "pathType": {
                    "type": "string",
                    "description": "Path type denoting signaling type",
                    "enum": [
                      "SRTE",
                      "UNKNOWN",
                      "RSVP"
                    ]
                  },
                  "sourceAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "sourceRouterAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  }
                },
                "title": "LspPathConfigRequest"
              }
            },
            "title": "Request«LspPathConfigRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createLspPath"
      },
      "task": true
    },
    {
      "name": "fetchLspPathList",
      "summary": "Fetch MPLS LSP path list",
      "description": "Fetch MPLS LSP path list",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IDs: List of unique LSP path identifiers: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "administrativeFailureErrorCode": {
                        "type": "string",
                        "description": "The error code when administrative operation is failed",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "administrativeState": {
                        "type": "string",
                        "description": "Path administrative state",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "computationState": {
                        "type": "string",
                        "description": "Path computation state",
                        "enum": [
                          "PATH_NOT_FOUND",
                          "PATH_ERROR",
                          "PATH_FOUND",
                          "UNKNOWN",
                          "PATH_NOT_COMPUTED"
                        ]
                      },
                      "computedHops": {
                        "type": "object",
                        "description": "Path computed hops. Explicit Route Objects (ERO)"
                      },
                      "creationType": {
                        "type": "string",
                        "description": "Path creation origin",
                        "enum": [
                          "PROVISIONED",
                          "REQUESTED",
                          "UNKNOWN",
                          "INITIATED",
                          "DISCOVERED"
                        ]
                      },
                      "destinationAddress": {
                        "type": "object",
                        "description": "Path destination IP address"
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the destination topology link/tp"
                      },
                      "destinationNetworkName": {
                        "type": "array",
                        "description": "Path destination network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "Path latency"
                      },
                      "lifecycleState": {
                        "type": "string",
                        "description": "Path lifecycle state",
                        "enum": [
                          "Delete",
                          "PartiallyDeployed",
                          "Deploying",
                          "Undeployed",
                          "Routing",
                          "Planned",
                          "Deployed",
                          "DeploymentFailed",
                          "WaitingForDeployment",
                          "RoutedAndSaved",
                          "RoutingFailed",
                          "Saved",
                          "Undeploy"
                        ]
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the parent LSP"
                      },
                      "maintenanceAffected": {
                        "type": "string",
                        "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                        "enum": [
                          "MAINTENANCE_CLEAR",
                          "HOPS_IN_MAINTENANCE",
                          "NONE"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "Path operational state",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownershipState": {
                        "type": "object",
                        "description": "Path ownership state"
                      },
                      "paramsConfig": {
                        "type": "object",
                        "description": "Path parameters configuration"
                      },
                      "paramsState": {
                        "type": "object",
                        "description": "Path parameters state"
                      },
                      "pathErrorCode": {
                        "type": "string",
                        "description": "The error code of path status",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "pathId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the path"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "Path name"
                      },
                      "pathType": {
                        "type": "string",
                        "description": "Path type denoting signaling type",
                        "enum": [
                          "SRTE",
                          "UNKNOWN",
                          "RSVP"
                        ]
                      },
                      "protectionState": {
                        "type": "string",
                        "description": "Path protection/redundancy activity state",
                        "enum": [
                          "ACTIVE",
                          "INACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Path protection/redundancy type",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      },
                      "provisionedHops": {
                        "type": "object",
                        "description": "Path provisioned hops. Include Route Objects (IRO)"
                      },
                      "recordedHops": {
                        "type": "object",
                        "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                      },
                      "sourceAddress": {
                        "type": "object",
                        "description": "Path source IP address"
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the source topology link/tp"
                      },
                      "sourceNetworkName": {
                        "type": "array",
                        "description": "Path source network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sourceRouterAddress": {
                        "type": "object",
                        "description": "Path source router IP address"
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Path tunnel identifier"
                      }
                    },
                    "title": "LspPath",
                    "description": "LSP path"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«LspPath»»"
            }
          },
          "title": "ResponseData«List«LspPath»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/fetchLspPathList"
      },
      "task": true
    },
    {
      "name": "getLspPath",
      "summary": "Get MPLS LSP path",
      "description": "Get MPLS LSP path",
      "input": [
        {
          "name": "pathId",
          "type": "string",
          "info": "ID: Unique LSP path identifier: string",
          "required": true,
          "schema": {
            "title": "pathId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "administrativeFailureErrorCode": {
                      "type": "string",
                      "description": "The error code when administrative operation is failed",
                      "enum": [
                        "INVALID_PLSPID",
                        "PROTO_DISCONNECTED",
                        "PATH_NAME_IN_USE",
                        "UNACCEPTABLE_PARAM",
                        "VSR_NOT_EXSIST",
                        "PCC_NOT_CAPABLE",
                        "PATH_NOT_FOUND",
                        "NSP_INTERNAL",
                        "UNDEFINED_PATH_ERR",
                        "PCE_NOT_FOUND",
                        "ADMIN_DOWN",
                        "NO_ERROR",
                        "PCC_DISCONNECTED",
                        "UNKNOWN_REASON",
                        "SRC_NOT_EXIST",
                        "NO_RESPONSE",
                        "PCC_INTERNAL_ERROR",
                        "VSR_NOT_CAPABLE",
                        "INTERNAL_ERROR",
                        "LSP_BAD_PARAM",
                        "SYNC_DELETE",
                        "SRC_NOT_UNIQUE",
                        "UNKNOWN_PLSPID",
                        "SIGNALLING",
                        "LIMIT_RCHD",
                        "PCC_NOT_EXIST",
                        "PCC_ADMIN_DOWN"
                      ]
                    },
                    "administrativeState": {
                      "type": "string",
                      "description": "Path administrative state",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "computationState": {
                      "type": "string",
                      "description": "Path computation state",
                      "enum": [
                        "PATH_NOT_FOUND",
                        "PATH_ERROR",
                        "PATH_FOUND",
                        "UNKNOWN",
                        "PATH_NOT_COMPUTED"
                      ]
                    },
                    "computedHops": {
                      "type": "object",
                      "description": "Path computed hops. Explicit Route Objects (ERO)"
                    },
                    "creationType": {
                      "type": "string",
                      "description": "Path creation origin",
                      "enum": [
                        "PROVISIONED",
                        "REQUESTED",
                        "UNKNOWN",
                        "INITIATED",
                        "DISCOVERED"
                      ]
                    },
                    "destinationAddress": {
                      "type": "object",
                      "description": "Path destination IP address"
                    },
                    "destinationId": {
                      "type": "string",
                      "description": "ID: Unique identifier of the destination topology link/tp"
                    },
                    "destinationNetworkName": {
                      "type": "array",
                      "description": "Path destination network topology name",
                      "items": {
                        "type": "string"
                      }
                    },
                    "latency": {
                      "type": "number",
                      "format": "double",
                      "description": "Path latency"
                    },
                    "lifecycleState": {
                      "type": "string",
                      "description": "Path lifecycle state",
                      "enum": [
                        "Delete",
                        "PartiallyDeployed",
                        "Deploying",
                        "Undeployed",
                        "Routing",
                        "Planned",
                        "Deployed",
                        "DeploymentFailed",
                        "WaitingForDeployment",
                        "RoutedAndSaved",
                        "RoutingFailed",
                        "Saved",
                        "Undeploy"
                      ]
                    },
                    "lspId": {
                      "type": "string",
                      "description": "ID: Unique identifier of the parent LSP"
                    },
                    "maintenanceAffected": {
                      "type": "string",
                      "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                      "enum": [
                        "MAINTENANCE_CLEAR",
                        "HOPS_IN_MAINTENANCE",
                        "NONE"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "Path operational state",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "ownershipState": {
                      "type": "object",
                      "description": "Path ownership state"
                    },
                    "paramsConfig": {
                      "type": "object",
                      "description": "Path parameters configuration"
                    },
                    "paramsState": {
                      "type": "object",
                      "description": "Path parameters state"
                    },
                    "pathErrorCode": {
                      "type": "string",
                      "description": "The error code of path status",
                      "enum": [
                        "INVALID_PLSPID",
                        "PROTO_DISCONNECTED",
                        "PATH_NAME_IN_USE",
                        "UNACCEPTABLE_PARAM",
                        "VSR_NOT_EXSIST",
                        "PCC_NOT_CAPABLE",
                        "PATH_NOT_FOUND",
                        "NSP_INTERNAL",
                        "UNDEFINED_PATH_ERR",
                        "PCE_NOT_FOUND",
                        "ADMIN_DOWN",
                        "NO_ERROR",
                        "PCC_DISCONNECTED",
                        "UNKNOWN_REASON",
                        "SRC_NOT_EXIST",
                        "NO_RESPONSE",
                        "PCC_INTERNAL_ERROR",
                        "VSR_NOT_CAPABLE",
                        "INTERNAL_ERROR",
                        "LSP_BAD_PARAM",
                        "SYNC_DELETE",
                        "SRC_NOT_UNIQUE",
                        "UNKNOWN_PLSPID",
                        "SIGNALLING",
                        "LIMIT_RCHD",
                        "PCC_NOT_EXIST",
                        "PCC_ADMIN_DOWN"
                      ]
                    },
                    "pathId": {
                      "type": "string",
                      "description": "ID: Unique identifier of the path"
                    },
                    "pathName": {
                      "type": "string",
                      "description": "Path name"
                    },
                    "pathType": {
                      "type": "string",
                      "description": "Path type denoting signaling type",
                      "enum": [
                        "SRTE",
                        "UNKNOWN",
                        "RSVP"
                      ]
                    },
                    "protectionState": {
                      "type": "string",
                      "description": "Path protection/redundancy activity state",
                      "enum": [
                        "ACTIVE",
                        "INACTIVE",
                        "UNKNOWN"
                      ]
                    },
                    "protectionType": {
                      "type": "string",
                      "description": "Path protection/redundancy type",
                      "enum": [
                        "SECONDARY",
                        "STANDBY",
                        "PRIMARY",
                        "UNKNOWN"
                      ]
                    },
                    "provisionedHops": {
                      "type": "object",
                      "description": "Path provisioned hops. Include Route Objects (IRO)"
                    },
                    "recordedHops": {
                      "type": "object",
                      "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                    },
                    "sourceAddress": {
                      "type": "object",
                      "description": "Path source IP address"
                    },
                    "sourceId": {
                      "type": "string",
                      "description": "ID: Unique identifier of the source topology link/tp"
                    },
                    "sourceNetworkName": {
                      "type": "array",
                      "description": "Path source network topology name",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sourceRouterAddress": {
                      "type": "object",
                      "description": "Path source router IP address"
                    },
                    "tunnelId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Path tunnel identifier"
                    }
                  },
                  "title": "LspPath",
                  "description": "LSP path"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«LspPath»"
            }
          },
          "title": "ResponseData«LspPath»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLspPath"
      },
      "task": true
    },
    {
      "name": "deleteLspPath",
      "summary": "Asynchronous API to delete MPLS LSP path(PCE Initiated only)",
      "description": "Asynchronous API to delete MPLS LSP path(PCE Initiated only)",
      "input": [
        {
          "name": "pathId",
          "type": "string",
          "info": "ID: Unique LSP path identifier: string",
          "required": true,
          "schema": {
            "title": "pathId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteLspPath"
      },
      "task": true
    },
    {
      "name": "patchLspPath",
      "summary": "Asynchronous API to patch PCE Initiated MPLS LSP path config and add/remove path profile override ",
      "description": "Asynchronous API to patch PCE Initiated MPLS LSP path config and add/remove path profile override for a MPLS LSP path. Setting pathProfileId.profileId = -1 deletes overide and sending same pathProfileOverride will cause a reset if the profileOverrideState is FAILED.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "lspPathConfigRequest: {\"data\": {\"administrativeState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"creationType\": \"Must be one of [PROVISIONED, REQUESTED, UNKNOWN, INITIATED, DISCOVERED]\", \"destinationAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"paramsConfig\": {\"pathParams\": {\"adminGroupExcludeAny\": \"object\", \"adminGroupIncludeAll\": \"object\", \"adminGroupIncludeAny\": \"object\", \"bandwidth\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"msd\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfile\": \"object\", \"pathProfileOverride\": \"object\", \"setupPriority\": 123, \"templateId\": 123}}, \"pathName\": \"string\", \"pathType\": \"Must be one of [SRTE, UNKNOWN, RSVP]\", \"sourceAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"sourceRouterAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "creationType",
                  "destinationAddress",
                  "pathName",
                  "pathType",
                  "sourceAddress",
                  "sourceRouterAddress"
                ],
                "properties": {
                  "administrativeState": {
                    "type": "string",
                    "description": "Path administrative state",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "creationType": {
                    "type": "string",
                    "description": "Path creation origin",
                    "enum": [
                      "PROVISIONED",
                      "REQUESTED",
                      "UNKNOWN",
                      "INITIATED",
                      "DISCOVERED"
                    ]
                  },
                  "destinationAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "paramsConfig": {
                    "type": "object",
                    "properties": {
                      "pathParams": {
                        "type": "object",
                        "properties": {
                          "adminGroupExcludeAny": {
                            "type": "object",
                            "description": "all of the admin group must be absent."
                          },
                          "adminGroupIncludeAll": {
                            "type": "object",
                            "description": "All of the admin groups must be present."
                          },
                          "adminGroupIncludeAny": {
                            "type": "object",
                            "description": "One or more of the admin groups must be present."
                          },
                          "bandwidth": {
                            "type": "integer",
                            "description": "Path bandwidth capacity. Units in Kbps"
                          },
                          "maxCost": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum cost constraint"
                          },
                          "maxHops": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum hops constraint. 0 and 255 means no limit."
                          },
                          "maxLatency": {
                            "type": "number",
                            "format": "double",
                            "description": "Path maximum latency constraint"
                          },
                          "maxTeMetric": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum TE metric constraint"
                          },
                          "msd": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path maximum SID depth. 0 means no MSD."
                          },
                          "objective": {
                            "type": "string",
                            "description": "Path metric objective",
                            "enum": [
                              "TE_METRIC",
                              "COST",
                              "DISTANCE",
                              "STAR_WEIGHT",
                              "LATENCY",
                              "HOPS"
                            ]
                          },
                          "pathProfile": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "pathProfileOverride": {
                            "type": "object",
                            "description": "Path computation profile override"
                          },
                          "setupPriority": {
                            "type": "integer",
                            "format": "int32",
                            "description": "Path setup priority from 0 to 7. Value 0 is the highest priority"
                          },
                          "templateId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "MPLS path template ID (PCE Initiated only)"
                          }
                        },
                        "title": "PathParams",
                        "description": "LSP path parameters"
                      }
                    },
                    "title": "LspPathConfigRequestParamsConfig",
                    "description": "Path parameters configuration"
                  },
                  "pathName": {
                    "type": "string",
                    "description": "Path name"
                  },
                  "pathType": {
                    "type": "string",
                    "description": "Path type denoting signaling type",
                    "enum": [
                      "SRTE",
                      "UNKNOWN",
                      "RSVP"
                    ]
                  },
                  "sourceAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "sourceRouterAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  }
                },
                "title": "LspPathConfigRequest"
              }
            },
            "title": "Request«LspPathConfigRequest»"
          }
        },
        {
          "name": "pathId",
          "type": "string",
          "info": "ID: Unique LSP path identifier: string",
          "required": true,
          "schema": {
            "title": "pathId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchLspPath"
      },
      "task": true
    },
    {
      "name": "getLspPaths",
      "summary": "Get MPLS LSP paths",
      "description": "Get MPLS LSP paths",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "administrativeFailureErrorCode": {
                        "type": "string",
                        "description": "The error code when administrative operation is failed",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "administrativeState": {
                        "type": "string",
                        "description": "Path administrative state",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "computationState": {
                        "type": "string",
                        "description": "Path computation state",
                        "enum": [
                          "PATH_NOT_FOUND",
                          "PATH_ERROR",
                          "PATH_FOUND",
                          "UNKNOWN",
                          "PATH_NOT_COMPUTED"
                        ]
                      },
                      "computedHops": {
                        "type": "object",
                        "description": "Path computed hops. Explicit Route Objects (ERO)"
                      },
                      "creationType": {
                        "type": "string",
                        "description": "Path creation origin",
                        "enum": [
                          "PROVISIONED",
                          "REQUESTED",
                          "UNKNOWN",
                          "INITIATED",
                          "DISCOVERED"
                        ]
                      },
                      "destinationAddress": {
                        "type": "object",
                        "description": "Path destination IP address"
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the destination topology link/tp"
                      },
                      "destinationNetworkName": {
                        "type": "array",
                        "description": "Path destination network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "Path latency"
                      },
                      "lifecycleState": {
                        "type": "string",
                        "description": "Path lifecycle state",
                        "enum": [
                          "Delete",
                          "PartiallyDeployed",
                          "Deploying",
                          "Undeployed",
                          "Routing",
                          "Planned",
                          "Deployed",
                          "DeploymentFailed",
                          "WaitingForDeployment",
                          "RoutedAndSaved",
                          "RoutingFailed",
                          "Saved",
                          "Undeploy"
                        ]
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the parent LSP"
                      },
                      "maintenanceAffected": {
                        "type": "string",
                        "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                        "enum": [
                          "MAINTENANCE_CLEAR",
                          "HOPS_IN_MAINTENANCE",
                          "NONE"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "Path operational state",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownershipState": {
                        "type": "object",
                        "description": "Path ownership state"
                      },
                      "paramsConfig": {
                        "type": "object",
                        "description": "Path parameters configuration"
                      },
                      "paramsState": {
                        "type": "object",
                        "description": "Path parameters state"
                      },
                      "pathErrorCode": {
                        "type": "string",
                        "description": "The error code of path status",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "pathId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the path"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "Path name"
                      },
                      "pathType": {
                        "type": "string",
                        "description": "Path type denoting signaling type",
                        "enum": [
                          "SRTE",
                          "UNKNOWN",
                          "RSVP"
                        ]
                      },
                      "protectionState": {
                        "type": "string",
                        "description": "Path protection/redundancy activity state",
                        "enum": [
                          "ACTIVE",
                          "INACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Path protection/redundancy type",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      },
                      "provisionedHops": {
                        "type": "object",
                        "description": "Path provisioned hops. Include Route Objects (IRO)"
                      },
                      "recordedHops": {
                        "type": "object",
                        "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                      },
                      "sourceAddress": {
                        "type": "object",
                        "description": "Path source IP address"
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the source topology link/tp"
                      },
                      "sourceNetworkName": {
                        "type": "array",
                        "description": "Path source network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sourceRouterAddress": {
                        "type": "object",
                        "description": "Path source router IP address"
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Path tunnel identifier"
                      }
                    },
                    "title": "LspPath",
                    "description": "LSP path"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«LspPath»»"
            }
          },
          "title": "ResponseData«List«LspPath»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getLspPaths"
      },
      "task": true
    },
    {
      "name": "createLspPaths",
      "summary": "Asynchronous API to create MPLS LSP paths(PCE Initiated only)",
      "description": "Asynchronous API to create MPLS LSP paths(PCE Initiated only)",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "lspPathConfigRequests: {\"data\": [{\"administrativeState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"creationType\": \"Must be one of [PROVISIONED, REQUESTED, UNKNOWN, INITIATED, DISCOVERED]\", \"destinationAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"paramsConfig\": {\"pathParams\": {\"adminGroupExcludeAny\": \"object\", \"adminGroupIncludeAll\": \"object\", \"adminGroupIncludeAny\": \"object\", \"bandwidth\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"msd\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfile\": \"object\", \"pathProfileOverride\": \"object\", \"setupPriority\": 123, \"templateId\": 123}}, \"pathName\": \"string\", \"pathType\": \"Must be one of [SRTE, UNKNOWN, RSVP]\", \"sourceAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"sourceRouterAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "creationType",
                    "destinationAddress",
                    "pathName",
                    "pathType",
                    "sourceAddress",
                    "sourceRouterAddress"
                  ],
                  "properties": {
                    "administrativeState": {
                      "type": "string",
                      "description": "Path administrative state",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "creationType": {
                      "type": "string",
                      "description": "Path creation origin",
                      "enum": [
                        "PROVISIONED",
                        "REQUESTED",
                        "UNKNOWN",
                        "INITIATED",
                        "DISCOVERED"
                      ]
                    },
                    "destinationAddress": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "paramsConfig": {
                      "type": "object",
                      "properties": {
                        "pathParams": {
                          "type": "object",
                          "properties": {
                            "adminGroupExcludeAny": {
                              "type": "object",
                              "description": "all of the admin group must be absent."
                            },
                            "adminGroupIncludeAll": {
                              "type": "object",
                              "description": "All of the admin groups must be present."
                            },
                            "adminGroupIncludeAny": {
                              "type": "object",
                              "description": "One or more of the admin groups must be present."
                            },
                            "bandwidth": {
                              "type": "integer",
                              "description": "Path bandwidth capacity. Units in Kbps"
                            },
                            "maxCost": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path maximum cost constraint"
                            },
                            "maxHops": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path maximum hops constraint. 0 and 255 means no limit."
                            },
                            "maxLatency": {
                              "type": "number",
                              "format": "double",
                              "description": "Path maximum latency constraint"
                            },
                            "maxTeMetric": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path maximum TE metric constraint"
                            },
                            "msd": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path maximum SID depth. 0 means no MSD."
                            },
                            "objective": {
                              "type": "string",
                              "description": "Path metric objective",
                              "enum": [
                                "TE_METRIC",
                                "COST",
                                "DISTANCE",
                                "STAR_WEIGHT",
                                "LATENCY",
                                "HOPS"
                              ]
                            },
                            "pathProfile": {
                              "type": "object",
                              "additionalProperties": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "pathProfileOverride": {
                              "type": "object",
                              "description": "Path computation profile override"
                            },
                            "setupPriority": {
                              "type": "integer",
                              "format": "int32",
                              "description": "Path setup priority from 0 to 7. Value 0 is the highest priority"
                            },
                            "templateId": {
                              "type": "integer",
                              "format": "int64",
                              "description": "MPLS path template ID (PCE Initiated only)"
                            }
                          },
                          "title": "PathParams",
                          "description": "LSP path parameters"
                        }
                      },
                      "title": "LspPathConfigRequestParamsConfig",
                      "description": "Path parameters configuration"
                    },
                    "pathName": {
                      "type": "string",
                      "description": "Path name"
                    },
                    "pathType": {
                      "type": "string",
                      "description": "Path type denoting signaling type",
                      "enum": [
                        "SRTE",
                        "UNKNOWN",
                        "RSVP"
                      ]
                    },
                    "sourceAddress": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "sourceRouterAddress": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    }
                  },
                  "title": "LspPathConfigRequest"
                }
              }
            },
            "title": "Request«List«LspPathConfigRequest»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "OPERATOR",
                      "ADMIN",
                      "USER"
                    ]
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«string»»"
            }
          },
          "title": "ResponseData«List«string»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createLspPaths"
      },
      "task": true
    },
    {
      "name": "deleteLspPaths",
      "summary": "Asynchronous API to delete MPLS LSP paths(PCE Initiated only). List maximum size is 500.",
      "description": "Asynchronous API to delete MPLS LSP paths(PCE Initiated only). List maximum size is 500.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "pathIds: {\"data\": \"array\"}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteLspPaths"
      },
      "task": true
    },
    {
      "name": "getLspPathsPaginated",
      "summary": "Get MPLS LSP paths",
      "description": "Get MPLS LSP paths",
      "input": [
        {
          "name": "limit",
          "type": "number",
          "info": "Size of results per page. Greater than or equal to 0: 123",
          "required": true,
          "schema": {
            "title": "limit",
            "type": "number"
          }
        },
        {
          "name": "page",
          "type": "number",
          "info": "Zero-based index of result set: 123",
          "required": true,
          "schema": {
            "title": "page",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "administrativeFailureErrorCode": {
                        "type": "string",
                        "description": "The error code when administrative operation is failed",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "administrativeState": {
                        "type": "string",
                        "description": "Path administrative state",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "computationState": {
                        "type": "string",
                        "description": "Path computation state",
                        "enum": [
                          "PATH_NOT_FOUND",
                          "PATH_ERROR",
                          "PATH_FOUND",
                          "UNKNOWN",
                          "PATH_NOT_COMPUTED"
                        ]
                      },
                      "computedHops": {
                        "type": "object",
                        "description": "Path computed hops. Explicit Route Objects (ERO)"
                      },
                      "creationType": {
                        "type": "string",
                        "description": "Path creation origin",
                        "enum": [
                          "PROVISIONED",
                          "REQUESTED",
                          "UNKNOWN",
                          "INITIATED",
                          "DISCOVERED"
                        ]
                      },
                      "destinationAddress": {
                        "type": "object",
                        "description": "Path destination IP address"
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the destination topology link/tp"
                      },
                      "destinationNetworkName": {
                        "type": "array",
                        "description": "Path destination network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "Path latency"
                      },
                      "lifecycleState": {
                        "type": "string",
                        "description": "Path lifecycle state",
                        "enum": [
                          "Delete",
                          "PartiallyDeployed",
                          "Deploying",
                          "Undeployed",
                          "Routing",
                          "Planned",
                          "Deployed",
                          "DeploymentFailed",
                          "WaitingForDeployment",
                          "RoutedAndSaved",
                          "RoutingFailed",
                          "Saved",
                          "Undeploy"
                        ]
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the parent LSP"
                      },
                      "maintenanceAffected": {
                        "type": "string",
                        "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                        "enum": [
                          "MAINTENANCE_CLEAR",
                          "HOPS_IN_MAINTENANCE",
                          "NONE"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "Path operational state",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownershipState": {
                        "type": "object",
                        "description": "Path ownership state"
                      },
                      "paramsConfig": {
                        "type": "object",
                        "description": "Path parameters configuration"
                      },
                      "paramsState": {
                        "type": "object",
                        "description": "Path parameters state"
                      },
                      "pathErrorCode": {
                        "type": "string",
                        "description": "The error code of path status",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "pathId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the path"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "Path name"
                      },
                      "pathType": {
                        "type": "string",
                        "description": "Path type denoting signaling type",
                        "enum": [
                          "SRTE",
                          "UNKNOWN",
                          "RSVP"
                        ]
                      },
                      "protectionState": {
                        "type": "string",
                        "description": "Path protection/redundancy activity state",
                        "enum": [
                          "ACTIVE",
                          "INACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Path protection/redundancy type",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      },
                      "provisionedHops": {
                        "type": "object",
                        "description": "Path provisioned hops. Include Route Objects (IRO)"
                      },
                      "recordedHops": {
                        "type": "object",
                        "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                      },
                      "sourceAddress": {
                        "type": "object",
                        "description": "Path source IP address"
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the source topology link/tp"
                      },
                      "sourceNetworkName": {
                        "type": "array",
                        "description": "Path source network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sourceRouterAddress": {
                        "type": "object",
                        "description": "Path source router IP address"
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Path tunnel identifier"
                      }
                    },
                    "title": "LspPath",
                    "description": "LSP path"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«LspPath»»"
            }
          },
          "title": "ResponseData«List«LspPath»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLspPathsPaginated"
      },
      "task": true
    },
    {
      "name": "getLsp",
      "summary": "Get RSVP or SR-TE LSP which discovered by SDN through device management NFMP or MDM",
      "description": "Get RSVP or SR-TE LSP which discovered by SDN through device management NFMP or MDM",
      "input": [
        {
          "name": "lspId",
          "type": "string",
          "info": "ID: Unique LSP identifier: string",
          "required": true,
          "schema": {
            "title": "lspId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "externalId": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "lspId": {
                      "type": "string",
                      "description": "ID: Unique identifier of the LSP"
                    },
                    "lspName": {
                      "type": "string",
                      "description": "LSP name"
                    },
                    "measuredBandwidth": {
                      "type": "integer",
                      "description": "Measured bandwidth on active LSP path"
                    },
                    "paths": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "administrativeFailureErrorCode": {
                            "type": "string",
                            "description": "The error code when administrative operation is failed",
                            "enum": [
                              "INVALID_PLSPID",
                              "PROTO_DISCONNECTED",
                              "PATH_NAME_IN_USE",
                              "UNACCEPTABLE_PARAM",
                              "VSR_NOT_EXSIST",
                              "PCC_NOT_CAPABLE",
                              "PATH_NOT_FOUND",
                              "NSP_INTERNAL",
                              "UNDEFINED_PATH_ERR",
                              "PCE_NOT_FOUND",
                              "ADMIN_DOWN",
                              "NO_ERROR",
                              "PCC_DISCONNECTED",
                              "UNKNOWN_REASON",
                              "SRC_NOT_EXIST",
                              "NO_RESPONSE",
                              "PCC_INTERNAL_ERROR",
                              "VSR_NOT_CAPABLE",
                              "INTERNAL_ERROR",
                              "LSP_BAD_PARAM",
                              "SYNC_DELETE",
                              "SRC_NOT_UNIQUE",
                              "UNKNOWN_PLSPID",
                              "SIGNALLING",
                              "LIMIT_RCHD",
                              "PCC_NOT_EXIST",
                              "PCC_ADMIN_DOWN"
                            ]
                          },
                          "administrativeState": {
                            "type": "string",
                            "description": "Path administrative state",
                            "enum": [
                              "MAINTENANCE",
                              "DOWN",
                              "UP"
                            ]
                          },
                          "computationState": {
                            "type": "string",
                            "description": "Path computation state",
                            "enum": [
                              "PATH_NOT_FOUND",
                              "PATH_ERROR",
                              "PATH_FOUND",
                              "UNKNOWN",
                              "PATH_NOT_COMPUTED"
                            ]
                          },
                          "computedHops": {
                            "type": "object",
                            "description": "Path computed hops. Explicit Route Objects (ERO)"
                          },
                          "creationType": {
                            "type": "string",
                            "description": "Path creation origin",
                            "enum": [
                              "PROVISIONED",
                              "REQUESTED",
                              "UNKNOWN",
                              "INITIATED",
                              "DISCOVERED"
                            ]
                          },
                          "destinationAddress": {
                            "type": "object",
                            "description": "Path destination IP address"
                          },
                          "destinationId": {
                            "type": "string",
                            "description": "ID: Unique identifier of the destination topology link/tp"
                          },
                          "destinationNetworkName": {
                            "type": "array",
                            "description": "Path destination network topology name",
                            "items": {
                              "type": "string"
                            }
                          },
                          "latency": {
                            "type": "number",
                            "format": "double",
                            "description": "Path latency"
                          },
                          "lifecycleState": {
                            "type": "string",
                            "description": "Path lifecycle state",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          },
                          "lspId": {
                            "type": "string",
                            "description": "ID: Unique identifier of the parent LSP"
                          },
                          "maintenanceAffected": {
                            "type": "string",
                            "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                            "enum": [
                              "MAINTENANCE_CLEAR",
                              "HOPS_IN_MAINTENANCE",
                              "NONE"
                            ]
                          },
                          "operationalState": {
                            "type": "string",
                            "description": "Path operational state",
                            "enum": [
                              "PARTIALLY_DOWN",
                              "TRANSITION",
                              "DOWN",
                              "DEGRADED",
                              "UNKNOWN",
                              "UP"
                            ]
                          },
                          "ownershipState": {
                            "type": "object",
                            "description": "Path ownership state"
                          },
                          "paramsConfig": {
                            "type": "object",
                            "description": "Path parameters configuration"
                          },
                          "paramsState": {
                            "type": "object",
                            "description": "Path parameters state"
                          },
                          "pathErrorCode": {
                            "type": "string",
                            "description": "The error code of path status",
                            "enum": [
                              "INVALID_PLSPID",
                              "PROTO_DISCONNECTED",
                              "PATH_NAME_IN_USE",
                              "UNACCEPTABLE_PARAM",
                              "VSR_NOT_EXSIST",
                              "PCC_NOT_CAPABLE",
                              "PATH_NOT_FOUND",
                              "NSP_INTERNAL",
                              "UNDEFINED_PATH_ERR",
                              "PCE_NOT_FOUND",
                              "ADMIN_DOWN",
                              "NO_ERROR",
                              "PCC_DISCONNECTED",
                              "UNKNOWN_REASON",
                              "SRC_NOT_EXIST",
                              "NO_RESPONSE",
                              "PCC_INTERNAL_ERROR",
                              "VSR_NOT_CAPABLE",
                              "INTERNAL_ERROR",
                              "LSP_BAD_PARAM",
                              "SYNC_DELETE",
                              "SRC_NOT_UNIQUE",
                              "UNKNOWN_PLSPID",
                              "SIGNALLING",
                              "LIMIT_RCHD",
                              "PCC_NOT_EXIST",
                              "PCC_ADMIN_DOWN"
                            ]
                          },
                          "pathId": {
                            "type": "string",
                            "description": "ID: Unique identifier of the path"
                          },
                          "pathName": {
                            "type": "string",
                            "description": "Path name"
                          },
                          "pathType": {
                            "type": "string",
                            "description": "Path type denoting signaling type",
                            "enum": [
                              "SRTE",
                              "UNKNOWN",
                              "RSVP"
                            ]
                          },
                          "protectionState": {
                            "type": "string",
                            "description": "Path protection/redundancy activity state",
                            "enum": [
                              "ACTIVE",
                              "INACTIVE",
                              "UNKNOWN"
                            ]
                          },
                          "protectionType": {
                            "type": "string",
                            "description": "Path protection/redundancy type",
                            "enum": [
                              "SECONDARY",
                              "STANDBY",
                              "PRIMARY",
                              "UNKNOWN"
                            ]
                          },
                          "provisionedHops": {
                            "type": "object",
                            "description": "Path provisioned hops. Include Route Objects (IRO)"
                          },
                          "recordedHops": {
                            "type": "object",
                            "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                          },
                          "sourceAddress": {
                            "type": "object",
                            "description": "Path source IP address"
                          },
                          "sourceId": {
                            "type": "string",
                            "description": "ID: Unique identifier of the source topology link/tp"
                          },
                          "sourceNetworkName": {
                            "type": "array",
                            "description": "Path source network topology name",
                            "items": {
                              "type": "string"
                            }
                          },
                          "sourceRouterAddress": {
                            "type": "object",
                            "description": "Path source router IP address"
                          },
                          "tunnelId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Path tunnel identifier"
                          }
                        },
                        "title": "LspPath",
                        "description": "LSP path"
                      }
                    },
                    "tunnelId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "LSP tunnel identifier"
                    }
                  },
                  "title": "Lsp",
                  "description": "MPLS LSP"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Lsp»"
            }
          },
          "title": "ResponseData«Lsp»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLsp"
      },
      "task": true
    },
    {
      "name": "getLsps",
      "summary": "Get RSVP or SR-TE LSPs which discovered by SDN through device management NFMP or MDM",
      "description": "Get RSVP or SR-TE LSPs which discovered by SDN through device management NFMP or MDM",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "externalId": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the LSP"
                      },
                      "lspName": {
                        "type": "string",
                        "description": "LSP name"
                      },
                      "measuredBandwidth": {
                        "type": "integer",
                        "description": "Measured bandwidth on active LSP path"
                      },
                      "paths": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "administrativeFailureErrorCode": {
                              "type": "string",
                              "description": "The error code when administrative operation is failed",
                              "enum": [
                                "INVALID_PLSPID",
                                "PROTO_DISCONNECTED",
                                "PATH_NAME_IN_USE",
                                "UNACCEPTABLE_PARAM",
                                "VSR_NOT_EXSIST",
                                "PCC_NOT_CAPABLE",
                                "PATH_NOT_FOUND",
                                "NSP_INTERNAL",
                                "UNDEFINED_PATH_ERR",
                                "PCE_NOT_FOUND",
                                "ADMIN_DOWN",
                                "NO_ERROR",
                                "PCC_DISCONNECTED",
                                "UNKNOWN_REASON",
                                "SRC_NOT_EXIST",
                                "NO_RESPONSE",
                                "PCC_INTERNAL_ERROR",
                                "VSR_NOT_CAPABLE",
                                "INTERNAL_ERROR",
                                "LSP_BAD_PARAM",
                                "SYNC_DELETE",
                                "SRC_NOT_UNIQUE",
                                "UNKNOWN_PLSPID",
                                "SIGNALLING",
                                "LIMIT_RCHD",
                                "PCC_NOT_EXIST",
                                "PCC_ADMIN_DOWN"
                              ]
                            },
                            "administrativeState": {
                              "type": "string",
                              "description": "Path administrative state",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "computationState": {
                              "type": "string",
                              "description": "Path computation state",
                              "enum": [
                                "PATH_NOT_FOUND",
                                "PATH_ERROR",
                                "PATH_FOUND",
                                "UNKNOWN",
                                "PATH_NOT_COMPUTED"
                              ]
                            },
                            "computedHops": {
                              "type": "object",
                              "description": "Path computed hops. Explicit Route Objects (ERO)"
                            },
                            "creationType": {
                              "type": "string",
                              "description": "Path creation origin",
                              "enum": [
                                "PROVISIONED",
                                "REQUESTED",
                                "UNKNOWN",
                                "INITIATED",
                                "DISCOVERED"
                              ]
                            },
                            "destinationAddress": {
                              "type": "object",
                              "description": "Path destination IP address"
                            },
                            "destinationId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the destination topology link/tp"
                            },
                            "destinationNetworkName": {
                              "type": "array",
                              "description": "Path destination network topology name",
                              "items": {
                                "type": "string"
                              }
                            },
                            "latency": {
                              "type": "number",
                              "format": "double",
                              "description": "Path latency"
                            },
                            "lifecycleState": {
                              "type": "string",
                              "description": "Path lifecycle state",
                              "enum": [
                                "Delete",
                                "PartiallyDeployed",
                                "Deploying",
                                "Undeployed",
                                "Routing",
                                "Planned",
                                "Deployed",
                                "DeploymentFailed",
                                "WaitingForDeployment",
                                "RoutedAndSaved",
                                "RoutingFailed",
                                "Saved",
                                "Undeploy"
                              ]
                            },
                            "lspId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the parent LSP"
                            },
                            "maintenanceAffected": {
                              "type": "string",
                              "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                              "enum": [
                                "MAINTENANCE_CLEAR",
                                "HOPS_IN_MAINTENANCE",
                                "NONE"
                              ]
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "Path operational state",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "ownershipState": {
                              "type": "object",
                              "description": "Path ownership state"
                            },
                            "paramsConfig": {
                              "type": "object",
                              "description": "Path parameters configuration"
                            },
                            "paramsState": {
                              "type": "object",
                              "description": "Path parameters state"
                            },
                            "pathErrorCode": {
                              "type": "string",
                              "description": "The error code of path status",
                              "enum": [
                                "INVALID_PLSPID",
                                "PROTO_DISCONNECTED",
                                "PATH_NAME_IN_USE",
                                "UNACCEPTABLE_PARAM",
                                "VSR_NOT_EXSIST",
                                "PCC_NOT_CAPABLE",
                                "PATH_NOT_FOUND",
                                "NSP_INTERNAL",
                                "UNDEFINED_PATH_ERR",
                                "PCE_NOT_FOUND",
                                "ADMIN_DOWN",
                                "NO_ERROR",
                                "PCC_DISCONNECTED",
                                "UNKNOWN_REASON",
                                "SRC_NOT_EXIST",
                                "NO_RESPONSE",
                                "PCC_INTERNAL_ERROR",
                                "VSR_NOT_CAPABLE",
                                "INTERNAL_ERROR",
                                "LSP_BAD_PARAM",
                                "SYNC_DELETE",
                                "SRC_NOT_UNIQUE",
                                "UNKNOWN_PLSPID",
                                "SIGNALLING",
                                "LIMIT_RCHD",
                                "PCC_NOT_EXIST",
                                "PCC_ADMIN_DOWN"
                              ]
                            },
                            "pathId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the path"
                            },
                            "pathName": {
                              "type": "string",
                              "description": "Path name"
                            },
                            "pathType": {
                              "type": "string",
                              "description": "Path type denoting signaling type",
                              "enum": [
                                "SRTE",
                                "UNKNOWN",
                                "RSVP"
                              ]
                            },
                            "protectionState": {
                              "type": "string",
                              "description": "Path protection/redundancy activity state",
                              "enum": [
                                "ACTIVE",
                                "INACTIVE",
                                "UNKNOWN"
                              ]
                            },
                            "protectionType": {
                              "type": "string",
                              "description": "Path protection/redundancy type",
                              "enum": [
                                "SECONDARY",
                                "STANDBY",
                                "PRIMARY",
                                "UNKNOWN"
                              ]
                            },
                            "provisionedHops": {
                              "type": "object",
                              "description": "Path provisioned hops. Include Route Objects (IRO)"
                            },
                            "recordedHops": {
                              "type": "object",
                              "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                            },
                            "sourceAddress": {
                              "type": "object",
                              "description": "Path source IP address"
                            },
                            "sourceId": {
                              "type": "string",
                              "description": "ID: Unique identifier of the source topology link/tp"
                            },
                            "sourceNetworkName": {
                              "type": "array",
                              "description": "Path source network topology name",
                              "items": {
                                "type": "string"
                              }
                            },
                            "sourceRouterAddress": {
                              "type": "object",
                              "description": "Path source router IP address"
                            },
                            "tunnelId": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Path tunnel identifier"
                            }
                          },
                          "title": "LspPath",
                          "description": "LSP path"
                        }
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "LSP tunnel identifier"
                      }
                    },
                    "title": "Lsp",
                    "description": "MPLS LSP"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Lsp»»"
            }
          },
          "title": "ResponseData«List«Lsp»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getLsps"
      },
      "task": true
    },
    {
      "name": "createOptimization",
      "summary": "Trigger global concurrent optimization on PCEP LSP paths",
      "description": "Trigger global concurrent optimization on PCEP LSP paths",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IDs: List of unique LSP paths identifiers: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOptimization"
      },
      "task": true
    },
    {
      "name": "createResignal",
      "summary": "Trigger resignal on a list of PCEP LSP paths",
      "description": "Trigger resignal on a list of PCEP LSP paths",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IDs: List of unique LSP paths identifiers: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createResignal"
      },
      "task": true
    },
    {
      "name": "getOnLink",
      "summary": "Get MPLS LSP paths on link",
      "description": "Get MPLS LSP paths on link",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "UUID: Identifier for a link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        },
        {
          "name": "requestType",
          "type": "string",
          "info": "OUTGOING: Return all LSP Paths in the forward direction of the link which egress from this router. INCOMING: Return all LSP paths that ingress into the router on this lin...(description truncated): Must be one of [MOVED, INCOMING, OUTGOING]",
          "required": true,
          "schema": {
            "title": "requestType",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "administrativeFailureErrorCode": {
                        "type": "string",
                        "description": "The error code when administrative operation is failed",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "administrativeState": {
                        "type": "string",
                        "description": "Path administrative state",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "computationState": {
                        "type": "string",
                        "description": "Path computation state",
                        "enum": [
                          "PATH_NOT_FOUND",
                          "PATH_ERROR",
                          "PATH_FOUND",
                          "UNKNOWN",
                          "PATH_NOT_COMPUTED"
                        ]
                      },
                      "computedHops": {
                        "type": "object",
                        "description": "Path computed hops. Explicit Route Objects (ERO)"
                      },
                      "creationType": {
                        "type": "string",
                        "description": "Path creation origin",
                        "enum": [
                          "PROVISIONED",
                          "REQUESTED",
                          "UNKNOWN",
                          "INITIATED",
                          "DISCOVERED"
                        ]
                      },
                      "destinationAddress": {
                        "type": "object",
                        "description": "Path destination IP address"
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the destination topology link/tp"
                      },
                      "destinationNetworkName": {
                        "type": "array",
                        "description": "Path destination network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "latency": {
                        "type": "number",
                        "format": "double",
                        "description": "Path latency"
                      },
                      "lifecycleState": {
                        "type": "string",
                        "description": "Path lifecycle state",
                        "enum": [
                          "Delete",
                          "PartiallyDeployed",
                          "Deploying",
                          "Undeployed",
                          "Routing",
                          "Planned",
                          "Deployed",
                          "DeploymentFailed",
                          "WaitingForDeployment",
                          "RoutedAndSaved",
                          "RoutingFailed",
                          "Saved",
                          "Undeploy"
                        ]
                      },
                      "lspId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the parent LSP"
                      },
                      "maintenanceAffected": {
                        "type": "string",
                        "description": "This flag indicates if any of the LSP path hops are affected by maintenance mode",
                        "enum": [
                          "MAINTENANCE_CLEAR",
                          "HOPS_IN_MAINTENANCE",
                          "NONE"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "Path operational state",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "ownershipState": {
                        "type": "object",
                        "description": "Path ownership state"
                      },
                      "paramsConfig": {
                        "type": "object",
                        "description": "Path parameters configuration"
                      },
                      "paramsState": {
                        "type": "object",
                        "description": "Path parameters state"
                      },
                      "pathErrorCode": {
                        "type": "string",
                        "description": "The error code of path status",
                        "enum": [
                          "INVALID_PLSPID",
                          "PROTO_DISCONNECTED",
                          "PATH_NAME_IN_USE",
                          "UNACCEPTABLE_PARAM",
                          "VSR_NOT_EXSIST",
                          "PCC_NOT_CAPABLE",
                          "PATH_NOT_FOUND",
                          "NSP_INTERNAL",
                          "UNDEFINED_PATH_ERR",
                          "PCE_NOT_FOUND",
                          "ADMIN_DOWN",
                          "NO_ERROR",
                          "PCC_DISCONNECTED",
                          "UNKNOWN_REASON",
                          "SRC_NOT_EXIST",
                          "NO_RESPONSE",
                          "PCC_INTERNAL_ERROR",
                          "VSR_NOT_CAPABLE",
                          "INTERNAL_ERROR",
                          "LSP_BAD_PARAM",
                          "SYNC_DELETE",
                          "SRC_NOT_UNIQUE",
                          "UNKNOWN_PLSPID",
                          "SIGNALLING",
                          "LIMIT_RCHD",
                          "PCC_NOT_EXIST",
                          "PCC_ADMIN_DOWN"
                        ]
                      },
                      "pathId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the path"
                      },
                      "pathName": {
                        "type": "string",
                        "description": "Path name"
                      },
                      "pathType": {
                        "type": "string",
                        "description": "Path type denoting signaling type",
                        "enum": [
                          "SRTE",
                          "UNKNOWN",
                          "RSVP"
                        ]
                      },
                      "protectionState": {
                        "type": "string",
                        "description": "Path protection/redundancy activity state",
                        "enum": [
                          "ACTIVE",
                          "INACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Path protection/redundancy type",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      },
                      "provisionedHops": {
                        "type": "object",
                        "description": "Path provisioned hops. Include Route Objects (IRO)"
                      },
                      "recordedHops": {
                        "type": "object",
                        "description": "Path recorded/actual hops. Recorded Route Objects (RRO)"
                      },
                      "sourceAddress": {
                        "type": "object",
                        "description": "Path source IP address"
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "ID: Unique identifier of the source topology link/tp"
                      },
                      "sourceNetworkName": {
                        "type": "array",
                        "description": "Path source network topology name",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sourceRouterAddress": {
                        "type": "object",
                        "description": "Path source router IP address"
                      },
                      "tunnelId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Path tunnel identifier"
                      }
                    },
                    "title": "LspPath",
                    "description": "LSP path"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«LspPath»»"
            }
          },
          "title": "ResponseData«List«LspPath»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOnLink"
      },
      "task": true
    },
    {
      "name": "gets",
      "summary": "Query all Network Elements",
      "description": "Query all Network Elements",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "baseMacAddress": {
                        "type": "string",
                        "description": "The base MAC address for the network element"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customProperties": {
                        "type": "array",
                        "description": "The custom properties of the network element",
                        "items": {
                          "type": "string"
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "geoLocation": {
                        "type": "object",
                        "properties": {
                          "latitude": {
                            "type": "number",
                            "format": "double",
                            "description": "The latitude of the geographical location in degrees"
                          },
                          "longitude": {
                            "type": "number",
                            "format": "double",
                            "description": "The longitude of the geographical location in degrees"
                          }
                        },
                        "title": "GeoLocation",
                        "description": "The location of the network element site"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "ipAddress": {
                        "type": "string",
                        "description": "The IP address of the network element"
                      },
                      "l3vpnCapable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the network element is l3vpn capable"
                      },
                      "location": {
                        "type": "string",
                        "description": "The name of the site where the network element is located"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the network element used for this object in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "platform": {
                        "type": "object",
                        "properties": {
                          "machine": {
                            "type": "string",
                            "description": "A vendor-specific identifier string representing the hardware in use."
                          },
                          "osName": {
                            "type": "string",
                            "description": "Unsupported - The name of the operating system in use - for example, 'Linux'."
                          },
                          "osRelease": {
                            "type": "string",
                            "description": "Unsupported - The current release level of the operating system in use. This string MAY indicate the OS source code revision."
                          },
                          "osVersion": {
                            "type": "string",
                            "description": "The current version level of the operating system in use. This string MAY indicate the specific OS build date and target variant information."
                          }
                        },
                        "title": "Platform",
                        "description": "Contains vendor-specific information for identifying the system platform and operating system."
                      },
                      "pwSwitchingCapable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the network element is pseudowire switching capable. Defaults to false"
                      },
                      "siteName": {
                        "type": "string",
                        "description": "The name of the network element site"
                      }
                    },
                    "title": "NetworkElement",
                    "description": "The network element definition"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«NetworkElement»»"
            }
          },
          "title": "ResponseData«List«NetworkElement»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/gets"
      },
      "task": true
    },
    {
      "name": "getSystem",
      "summary": "Query a unique identifier for a Network Element by System ID",
      "description": "Query a unique identifier for a Network Element by System ID",
      "input": [
        {
          "name": "systemId",
          "type": "string",
          "info": "The System ID for the Network Element to be queried: string",
          "required": true,
          "schema": {
            "title": "systemId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "baseMacAddress": {
                      "type": "string",
                      "description": "The base MAC address for the network element"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customProperties": {
                      "type": "array",
                      "description": "The custom properties of the network element",
                      "items": {
                        "type": "string"
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "geoLocation": {
                      "type": "object",
                      "properties": {
                        "latitude": {
                          "type": "number",
                          "format": "double",
                          "description": "The latitude of the geographical location in degrees"
                        },
                        "longitude": {
                          "type": "number",
                          "format": "double",
                          "description": "The longitude of the geographical location in degrees"
                        }
                      },
                      "title": "GeoLocation",
                      "description": "The location of the network element site"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "ipAddress": {
                      "type": "string",
                      "description": "The IP address of the network element"
                    },
                    "l3vpnCapable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network element is l3vpn capable"
                    },
                    "location": {
                      "type": "string",
                      "description": "The name of the site where the network element is located"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nspDbFdn": {
                      "type": "string",
                      "description": "FDN of the network element used for this object in the NSP DB"
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "platform": {
                      "type": "object",
                      "properties": {
                        "machine": {
                          "type": "string",
                          "description": "A vendor-specific identifier string representing the hardware in use."
                        },
                        "osName": {
                          "type": "string",
                          "description": "Unsupported - The name of the operating system in use - for example, 'Linux'."
                        },
                        "osRelease": {
                          "type": "string",
                          "description": "Unsupported - The current release level of the operating system in use. This string MAY indicate the OS source code revision."
                        },
                        "osVersion": {
                          "type": "string",
                          "description": "The current version level of the operating system in use. This string MAY indicate the specific OS build date and target variant information."
                        }
                      },
                      "title": "Platform",
                      "description": "Contains vendor-specific information for identifying the system platform and operating system."
                    },
                    "pwSwitchingCapable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network element is pseudowire switching capable. Defaults to false"
                    },
                    "siteName": {
                      "type": "string",
                      "description": "The name of the network element site"
                    }
                  },
                  "title": "NetworkElement",
                  "description": "The network element definition"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«NetworkElement»"
            }
          },
          "title": "ResponseData«NetworkElement»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSystem"
      },
      "task": true
    },
    {
      "name": "update",
      "summary": "Update Network Element capabilities",
      "description": "Update Network Element capabilities",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The unique identifier of the network element: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "A request object used to modify Network Element: {\"data\": {\"l3vpnCapable\": \"boolean\", \"pwSwitchingCapable\": \"boolean\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "l3vpnCapable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network element is l3vpn capable"
                  },
                  "pwSwitchingCapable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network element is pseudowire switching capable. Defaults to false"
                  }
                },
                "title": "NetworkElementRequest",
                "description": "A request object used to modify Network Element"
              }
            },
            "title": "Request«NetworkElementRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/update"
      },
      "task": true
    },
    {
      "name": "getV4NeUuid",
      "summary": "Find a network element by a unique identifier",
      "description": "Find a network element by a unique identifier",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "baseMacAddress": {
                      "type": "string",
                      "description": "The base MAC address for the network element"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "customProperties": {
                      "type": "array",
                      "description": "The custom properties of the network element",
                      "items": {
                        "type": "string"
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "geoLocation": {
                      "type": "object",
                      "properties": {
                        "latitude": {
                          "type": "number",
                          "format": "double",
                          "description": "The latitude of the geographical location in degrees"
                        },
                        "longitude": {
                          "type": "number",
                          "format": "double",
                          "description": "The longitude of the geographical location in degrees"
                        }
                      },
                      "title": "GeoLocation",
                      "description": "The location of the network element site"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "ipAddress": {
                      "type": "string",
                      "description": "The IP address of the network element"
                    },
                    "l3vpnCapable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network element is l3vpn capable"
                    },
                    "location": {
                      "type": "string",
                      "description": "The name of the site where the network element is located"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "nspDbFdn": {
                      "type": "string",
                      "description": "FDN of the network element used for this object in the NSP DB"
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "platform": {
                      "type": "object",
                      "properties": {
                        "machine": {
                          "type": "string",
                          "description": "A vendor-specific identifier string representing the hardware in use."
                        },
                        "osName": {
                          "type": "string",
                          "description": "Unsupported - The name of the operating system in use - for example, 'Linux'."
                        },
                        "osRelease": {
                          "type": "string",
                          "description": "Unsupported - The current release level of the operating system in use. This string MAY indicate the OS source code revision."
                        },
                        "osVersion": {
                          "type": "string",
                          "description": "The current version level of the operating system in use. This string MAY indicate the specific OS build date and target variant information."
                        }
                      },
                      "title": "Platform",
                      "description": "Contains vendor-specific information for identifying the system platform and operating system."
                    },
                    "pwSwitchingCapable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network element is pseudowire switching capable. Defaults to false"
                    },
                    "siteName": {
                      "type": "string",
                      "description": "The name of the network element site"
                    }
                  },
                  "title": "NetworkElement",
                  "description": "The network element definition"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«NetworkElement»"
            }
          },
          "title": "ResponseData«NetworkElement»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4NeUuid"
      },
      "task": true
    },
    {
      "name": "getLatency",
      "summary": "Get NSP latency parameters",
      "description": "Get NSP latency parameters",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "classic": {
                      "type": "boolean",
                      "description": "Enable/disable classic latency streaming. Requires the use of the twampTests to define source and destination for each session."
                    },
                    "modelDriven": {
                      "type": "boolean",
                      "description": "Enable/disable model-driven latency which uses the model-driven OAM application to create/execute/stop tests. The use of twampTests is not required with this mode."
                    },
                    "twampTests": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "destination": {
                            "type": "string",
                            "description": "Destination IP address for twamp test"
                          },
                          "session": {
                            "type": "string",
                            "description": "Session name of twamp test on the node"
                          },
                          "source": {
                            "type": "string",
                            "description": "Source IP address for twamp test"
                          }
                        },
                        "title": "TwampTest",
                        "description": "Object representing a single TWAMP test"
                      }
                    }
                  },
                  "title": "Latency",
                  "description": "Grouping of all latency related parameters for IP/MPLS optimization. If using classic mode, the user must define the session name, source, and destination for twamp tests using the twampTests body. Test session names must be unique among all tests. A new test with an already used session name will overwrite previous one."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Latency»"
            }
          },
          "title": "ResponseData«Latency»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getLatency"
      },
      "task": true
    },
    {
      "name": "patchLatency",
      "summary": "Patch NSP latency parameters",
      "description": "Patch NSP latency parameters",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Grouping of all latency related parameters for IP/MPLS optimization. If using classic mode, the user must define the session name, source, and destination for twamp tests...(description truncated): {\"data\": {\"classic\": \"boolean\", \"modelDriven\": \"boolean\", \"twampTests\": [{\"destination\": \"string\", \"session\": \"string\", \"source\": \"string\"}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "classic": {
                    "type": "boolean",
                    "description": "Enable/disable classic latency streaming. Requires the use of the twampTests to define source and destination for each session."
                  },
                  "modelDriven": {
                    "type": "boolean",
                    "description": "Enable/disable model-driven latency which uses the model-driven OAM application to create/execute/stop tests. The use of twampTests is not required with this mode."
                  },
                  "twampTests": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "destination": {
                          "type": "string",
                          "description": "Destination IP address for twamp test"
                        },
                        "session": {
                          "type": "string",
                          "description": "Session name of twamp test on the node"
                        },
                        "source": {
                          "type": "string",
                          "description": "Source IP address for twamp test"
                        }
                      },
                      "title": "TwampTest",
                      "description": "Object representing a single TWAMP test"
                    }
                  }
                },
                "title": "Latency",
                "description": "Grouping of all latency related parameters for IP/MPLS optimization. If using classic mode, the user must define the session name, source, and destination for twamp tests using the twampTests body. Test session names must be unique among all tests. A new test with an already used session name will overwrite previous one."
              }
            },
            "title": "Request«Latency»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchLatency"
      },
      "task": true
    },
    {
      "name": "deleteLatency",
      "summary": "API used to delete twamp tests.",
      "description": "API used to delete twamp tests.",
      "input": [
        {
          "name": "session",
          "type": "string",
          "info": "Session name for test to be removed. If session is \"all\" it will remove all tests.: string",
          "required": true,
          "schema": {
            "title": "session",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteLatency"
      },
      "task": true
    },
    {
      "name": "getTcaConfigPolicy",
      "summary": "Get TCA Policy configuration. Policies configuration include list of policies and collection enable",
      "description": "Get TCA Policy configuration. Policies configuration include list of policies and collection enable flag",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "policyEnabled"
                  ],
                  "properties": {
                    "ipTcaPolicyFdn": {
                      "type": "string",
                      "description": "Policy fdn of IP interface policy is created from NFMP. Enter null to delete the pre-configured policy fdn"
                    },
                    "mplsTcaPolicyFdn": {
                      "type": "string",
                      "description": "Policy fdn of MPLS interface policy is created from NFMP. Enter null to delete the pre-configured policy fdn"
                    },
                    "policyEnabled": {
                      "type": "boolean",
                      "description": "Enable/disable snmp statistic collection"
                    },
                    "sarIpTcaPolicyFdn": {
                      "type": "string",
                      "description": "Policy fdn of SAR IP interface policy created from NFMP. Enter null value to delete the pre-configured policy fdn"
                    }
                  },
                  "title": "SnmpTcaPolicyInfo",
                  "description": "NSP configuration on SNMP TCA policy for statistic collection"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«SnmpTcaPolicyInfo»"
            }
          },
          "title": "ResponseData«SnmpTcaPolicyInfo»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getTcaConfigPolicy"
      },
      "task": true
    },
    {
      "name": "patchTcaConfigPolicy",
      "summary": "Patch a TCA configuration policy by updating the parameters",
      "description": "Patch a TCA configuration policy by updating the parameters",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "NSP configuration on SNMP TCA policy for statistic collection: {\"data\": {\"ipTcaPolicyFdn\": \"string\", \"mplsTcaPolicyFdn\": \"string\", \"policyEnabled\": \"boolean\", \"sarIpTcaPolicyFdn\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "policyEnabled"
                ],
                "properties": {
                  "ipTcaPolicyFdn": {
                    "type": "string",
                    "description": "Policy fdn of IP interface policy is created from NFMP. Enter null to delete the pre-configured policy fdn"
                  },
                  "mplsTcaPolicyFdn": {
                    "type": "string",
                    "description": "Policy fdn of MPLS interface policy is created from NFMP. Enter null to delete the pre-configured policy fdn"
                  },
                  "policyEnabled": {
                    "type": "boolean",
                    "description": "Enable/disable snmp statistic collection"
                  },
                  "sarIpTcaPolicyFdn": {
                    "type": "string",
                    "description": "Policy fdn of SAR IP interface policy created from NFMP. Enter null value to delete the pre-configured policy fdn"
                  }
                },
                "title": "SnmpTcaPolicyInfo",
                "description": "NSP configuration on SNMP TCA policy for statistic collection"
              }
            },
            "title": "Request«SnmpTcaPolicyInfo»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchTcaConfigPolicy"
      },
      "task": true
    },
    {
      "name": "getTrafficDataCollection",
      "summary": "Get NSP traffic collection parameters.",
      "description": "Get NSP traffic collection parameters.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "enabled": {
                      "type": "boolean",
                      "description": "Toggle whether NSP traffic collection is enabled or not."
                    },
                    "flowCollection": {
                      "type": "object",
                      "properties": {
                        "mplsLabelStackQueryRate": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Interval in seconds between each query of KPI-engine for cflowd statistics."
                        },
                        "srTeLspEnabled": {
                          "type": "boolean",
                          "description": "Toggle whether flow-collection telemetry for SR-TE LSPs is enabled or not. Flow collection only takes place when traffic-data-collection.enabled is also true."
                        },
                        "staleStatsWipeInterval": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Interval in seconds between checks for stale cflowd stats."
                        },
                        "statsTimeToLive": {
                          "type": "integer",
                          "format": "int32",
                          "description": "Time to live in seconds for stats before they become stale."
                        }
                      },
                      "title": "FlowCollection",
                      "description": "NSP configuration for flow-collection telemetry parameters."
                    },
                    "linkBwTargetThreshold": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The target value of link bandwidth utilization in percentage to achieve after optimization. Default is 80. It can be dropped to produce more significant swings in bandwidth but there is more risk of flip-flopping between two fairly congested links. The target threshold must be less than or equal to linkBwTriggerThreshold."
                    },
                    "linkBwTriggerThreshold": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Bandwidth threshold (in percentage) for a link to trigger re-route of LSPs. Range from 0 to 100. Default is 80. The trigger threshold must be greater than or equal to linkBwTargetThreshold."
                    },
                    "source": {
                      "type": "string",
                      "description": "The source of the traffic collection data. Options are: mdm, nfmp.",
                      "enum": [
                        "mdm",
                        "nfmp"
                      ]
                    }
                  },
                  "title": "TrafficDataCollection",
                  "description": "Grouping of all traffic collection parameters"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TrafficDataCollection»"
            }
          },
          "title": "ResponseData«TrafficDataCollection»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getTrafficDataCollection"
      },
      "task": true
    },
    {
      "name": "patchTrafficDataCollection",
      "summary": "Patch NSP traffic-collection parameters.",
      "description": "Patch NSP traffic-collection parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Grouping of all traffic collection parameters: {\"data\": {\"enabled\": \"boolean\", \"flowCollection\": {\"mplsLabelStackQueryRate\": 123, \"srTeLspEnabled\": \"boolean\", \"staleStatsWipeInterval\": 123, \"statsTimeToLive\": 123}, \"linkBwTargetThreshold\": 123, \"linkBwTriggerThreshold\": 123, \"source\": \"Must be one of [mdm, nfmp]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "enabled": {
                    "type": "boolean",
                    "description": "Toggle whether NSP traffic collection is enabled or not."
                  },
                  "flowCollection": {
                    "type": "object",
                    "properties": {
                      "mplsLabelStackQueryRate": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Interval in seconds between each query of KPI-engine for cflowd statistics."
                      },
                      "srTeLspEnabled": {
                        "type": "boolean",
                        "description": "Toggle whether flow-collection telemetry for SR-TE LSPs is enabled or not. Flow collection only takes place when traffic-data-collection.enabled is also true."
                      },
                      "staleStatsWipeInterval": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Interval in seconds between checks for stale cflowd stats."
                      },
                      "statsTimeToLive": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Time to live in seconds for stats before they become stale."
                      }
                    },
                    "title": "FlowCollection",
                    "description": "NSP configuration for flow-collection telemetry parameters."
                  },
                  "linkBwTargetThreshold": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The target value of link bandwidth utilization in percentage to achieve after optimization. Default is 80. It can be dropped to produce more significant swings in bandwidth but there is more risk of flip-flopping between two fairly congested links. The target threshold must be less than or equal to linkBwTriggerThreshold."
                  },
                  "linkBwTriggerThreshold": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Bandwidth threshold (in percentage) for a link to trigger re-route of LSPs. Range from 0 to 100. Default is 80. The trigger threshold must be greater than or equal to linkBwTargetThreshold."
                  },
                  "source": {
                    "type": "string",
                    "description": "The source of the traffic collection data. Options are: mdm, nfmp.",
                    "enum": [
                      "mdm",
                      "nfmp"
                    ]
                  }
                },
                "title": "TrafficDataCollection",
                "description": "Grouping of all traffic collection parameters"
              }
            },
            "title": "Request«TrafficDataCollection»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchTrafficDataCollection"
      },
      "task": true
    },
    {
      "name": "getLinkTp",
      "summary": "Get link connected to the given termination point. The link may be a source or destination on the t",
      "description": "Get link connected to the given termination point. The link may be a source or destination on the termination point. A link has a UUID, attributes, a source (node, termination-point) and a destination (node, termination-point)",
      "input": [
        {
          "name": "tpId",
          "type": "string",
          "info": "UUID: Identifier for a termination point: string",
          "required": true,
          "schema": {
            "title": "tpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "destination": {
                      "type": "object",
                      "required": [
                        "destNode"
                      ],
                      "properties": {
                        "destNode": {
                          "type": "string",
                          "description": "Destination node identifier, must be in the same network."
                        },
                        "destTp": {
                          "type": "string",
                          "description": "Termination point within destination node that terminates the link."
                        }
                      },
                      "title": "Destination",
                      "description": "This container holds the logical destination of a particular link."
                    },
                    "linkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "LinkId",
                      "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                    },
                    "nspLink": {
                      "type": "object",
                      "properties": {
                        "linkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "linkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspLink",
                      "description": "Augmentation for NSP link"
                    },
                    "source": {
                      "type": "object",
                      "required": [
                        "sourceNode"
                      ],
                      "properties": {
                        "sourceNode": {
                          "type": "string",
                          "description": "Source node identifier, must be in same topology."
                        },
                        "sourceTp": {
                          "type": "string",
                          "description": "Termination point within source node that terminates the link."
                        }
                      },
                      "title": "Source",
                      "description": "This container holds the logical source of a particular link."
                    },
                    "supportingLink": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "linkRef": {
                            "type": "string",
                            "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                          },
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which underlay topology the supporting link is present."
                          }
                        },
                        "title": "SupportingLink"
                      }
                    }
                  },
                  "title": "Link",
                  "description": "Configuration parameters for NSP at link level"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Link»"
            }
          },
          "title": "ResponseData«Link»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLinkTp"
      },
      "task": true
    },
    {
      "name": "getV4NspNetL3LinkLinkId",
      "summary": "Get link. A link has a UUID, attributes, a source (node, termination-point) and a destination (node",
      "description": "Get link. A link has a UUID, attributes, a source (node, termination-point) and a destination (node, termination-point)",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "UUID: Identifier for a link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "destination": {
                      "type": "object",
                      "required": [
                        "destNode"
                      ],
                      "properties": {
                        "destNode": {
                          "type": "string",
                          "description": "Destination node identifier, must be in the same network."
                        },
                        "destTp": {
                          "type": "string",
                          "description": "Termination point within destination node that terminates the link."
                        }
                      },
                      "title": "Destination",
                      "description": "This container holds the logical destination of a particular link."
                    },
                    "linkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "LinkId",
                      "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                    },
                    "nspLink": {
                      "type": "object",
                      "properties": {
                        "linkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "linkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspLink",
                      "description": "Augmentation for NSP link"
                    },
                    "source": {
                      "type": "object",
                      "required": [
                        "sourceNode"
                      ],
                      "properties": {
                        "sourceNode": {
                          "type": "string",
                          "description": "Source node identifier, must be in same topology."
                        },
                        "sourceTp": {
                          "type": "string",
                          "description": "Termination point within source node that terminates the link."
                        }
                      },
                      "title": "Source",
                      "description": "This container holds the logical source of a particular link."
                    },
                    "supportingLink": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "linkRef": {
                            "type": "string",
                            "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                          },
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which underlay topology the supporting link is present."
                          }
                        },
                        "title": "SupportingLink"
                      }
                    }
                  },
                  "title": "Link",
                  "description": "Configuration parameters for NSP at link level"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Link»"
            }
          },
          "title": "ResponseData«Link»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4NspNetL3LinkLinkId"
      },
      "task": true
    },
    {
      "name": "patchV4NspNetL3LinkLinkUuid",
      "summary": "Patch a link by updating the configuration parameters. Configuration parameters supported are srlg-",
      "description": "Patch a link by updating the configuration parameters. Configuration parameters supported are srlg-value, latency, te-metric, igp-metric, administrative-group, admin-status, measuredIpBw and measuredMplsBw",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "NSP link parameters grouping: {\"data\": {\"accessType\": \"Must be one of [point_to_point, multi_access]\", \"adminStatus\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"administrativeGroup\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"igpMetric\": 123, \"isAbstract\": }, \"latency\": 123, \"maxResvLinkBandwidth\": 123, \"measuredIpBw\": 123, \"measuredMplsBw\": 123, \"name\": \"string\", \"srlgValue\": [{\"uint32\": 123}], \"teMetric\": 123, \"unreservedBandwidth\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "accessType": {
                    "type": "string",
                    "description": "Link access type, which can be point-to-point ormulti-access",
                    "enum": [
                      "point_to_point",
                      "multi_access"
                    ]
                  },
                  "adminStatus": {
                    "type": "string",
                    "description": "The administrative state of the link",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "administrativeGroup": {
                    "type": "object",
                    "properties": {
                      "adminGroup": {
                        "type": "object",
                        "properties": {
                          "binary": {
                            "type": "string",
                            "format": "byte"
                          }
                        },
                        "title": "AdminGroup",
                        "description": "Administrative group/Resource class/Color."
                      },
                      "extendedAdminGroup": {
                        "type": "object",
                        "properties": {
                          "binary": {
                            "type": "string",
                            "format": "byte"
                          }
                        },
                        "title": "ExtendedAdminGroup",
                        "description": "Extended administrative group/Resource class/Color."
                      }
                    },
                    "title": "AdminGroups",
                    "description": "TE administrative group derived type"
                  },
                  "igpMetric": {
                    "type": "integer",
                    "format": "int32",
                    "description": "IGP topology Metric"
                  },
                  "isAbstract": {
                    "type": "object",
                    "description": "Present if the link is abstract",
                    "properties": {}
                  },
                  "latency": {
                    "type": "number",
                    "format": "double",
                    "description": "Delay or latency in micro seconds. The value must be greater than or equal to 0"
                  },
                  "maxResvLinkBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum amount of bandwidth that can be reserved in this direction in this link. Units in kbps"
                  },
                  "measuredIpBw": {
                    "type": "number",
                    "format": "double",
                    "description": "Measured IP bandwidth. Units in Mbps. The value must be greater than or equal to 0"
                  },
                  "measuredMplsBw": {
                    "type": "number",
                    "format": "double",
                    "description": "Measured MPLS bandwidth. Units in Mbps. The value must be greater than or equal to 0"
                  },
                  "name": {
                    "type": "string",
                    "description": "Link Name"
                  },
                  "srlgValue": {
                    "type": "array",
                    "description": "A list of SRLG values",
                    "items": {
                      "type": "object",
                      "properties": {
                        "uint32": {
                          "type": "integer",
                          "format": "int64"
                        }
                      },
                      "title": "Srlg",
                      "description": "SRLG type"
                    }
                  },
                  "teMetric": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Traffic Engineering Metric"
                  },
                  "unreservedBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Unreserved bandwidth. Units in kbps"
                  }
                },
                "title": "LinkParams",
                "description": "NSP link parameters grouping"
              }
            },
            "title": "Request«LinkParams»"
          }
        },
        {
          "name": "linkUuid",
          "type": "string",
          "info": "The unique identifier of the link: string",
          "required": true,
          "schema": {
            "title": "linkUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "destination": {
                      "type": "object",
                      "required": [
                        "destNode"
                      ],
                      "properties": {
                        "destNode": {
                          "type": "string",
                          "description": "Destination node identifier, must be in the same network."
                        },
                        "destTp": {
                          "type": "string",
                          "description": "Termination point within destination node that terminates the link."
                        }
                      },
                      "title": "Destination",
                      "description": "This container holds the logical destination of a particular link."
                    },
                    "linkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "LinkId",
                      "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                    },
                    "nspLink": {
                      "type": "object",
                      "properties": {
                        "linkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "linkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspLink",
                      "description": "Augmentation for NSP link"
                    },
                    "source": {
                      "type": "object",
                      "required": [
                        "sourceNode"
                      ],
                      "properties": {
                        "sourceNode": {
                          "type": "string",
                          "description": "Source node identifier, must be in same topology."
                        },
                        "sourceTp": {
                          "type": "string",
                          "description": "Termination point within source node that terminates the link."
                        }
                      },
                      "title": "Source",
                      "description": "This container holds the logical source of a particular link."
                    },
                    "supportingLink": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "linkRef": {
                            "type": "string",
                            "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                          },
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which underlay topology the supporting link is present."
                          }
                        },
                        "title": "SupportingLink"
                      }
                    }
                  },
                  "title": "Link",
                  "description": "Configuration parameters for NSP at link level"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Link»"
            }
          },
          "title": "ResponseData«Link»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchV4NspNetL3LinkLinkUuid"
      },
      "task": true
    },
    {
      "name": "getV4NspNetL3NetworkNetworkId",
      "summary": "Get NSP network. A network has a UUID, attributes, a list of nodes and a list of links",
      "description": "Get NSP network. A network has a UUID, attributes, a list of nodes and a list of links",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "UUID: Identifier for a network: 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": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "link": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "destination": {
                            "type": "object",
                            "required": [
                              "destNode"
                            ],
                            "properties": {
                              "destNode": {
                                "type": "string",
                                "description": "Destination node identifier, must be in the same network."
                              },
                              "destTp": {
                                "type": "string",
                                "description": "Termination point within destination node that terminates the link."
                              }
                            },
                            "title": "Destination",
                            "description": "This container holds the logical destination of a particular link."
                          },
                          "linkId": {
                            "type": "object",
                            "properties": {
                              "uri": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "LinkId",
                            "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                          },
                          "nspLink": {
                            "type": "object",
                            "properties": {
                              "linkConfig": {
                                "type": "object",
                                "description": "Configuration data"
                              },
                              "linkState": {
                                "type": "object",
                                "description": "Operational state data"
                              }
                            },
                            "title": "NspLink",
                            "description": "Augmentation for NSP link"
                          },
                          "source": {
                            "type": "object",
                            "required": [
                              "sourceNode"
                            ],
                            "properties": {
                              "sourceNode": {
                                "type": "string",
                                "description": "Source node identifier, must be in same topology."
                              },
                              "sourceTp": {
                                "type": "string",
                                "description": "Termination point within source node that terminates the link."
                              }
                            },
                            "title": "Source",
                            "description": "This container holds the logical source of a particular link."
                          },
                          "supportingLink": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "linkRef": {
                                  "type": "string",
                                  "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                                },
                                "networkRef": {
                                  "type": "string",
                                  "description": "This leaf identifies in which underlay topology the supporting link is present."
                                }
                              },
                              "title": "SupportingLink"
                            }
                          }
                        },
                        "title": "Link",
                        "description": "Configuration parameters for NSP at link level"
                      }
                    },
                    "networkId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "NetworkId",
                      "description": "Identifier for a network. The precise structure of the network-id will be up to an implementation. The identifier SHOULD be chosen such that the same network will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of network."
                    },
                    "networkTypes": {
                      "type": "object",
                      "title": "NetworkTypes",
                      "description": "Serves as an augmentation target. The network type is indicated through corresponding presence containers augmented into this container."
                    },
                    "node": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "nodeId": {
                            "type": "object",
                            "description": "Identifies a node uniquely within the containing network."
                          },
                          "nspNode": {
                            "type": "object",
                            "description": "Augmentation for NSP node"
                          },
                          "supportingNode": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "terminationPoint": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Node"
                      }
                    },
                    "nspNetwork": {
                      "type": "object",
                      "properties": {
                        "networkConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "networkName": {
                          "type": "string",
                          "description": "The name of the network"
                        },
                        "networkState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspNetwork",
                      "description": "Augmentation for NSP network"
                    },
                    "serverProvided": {
                      "type": "boolean",
                      "description": "Indicates whether the information concerning this particular network is populated by the server (server-provided true, the general case for network information discovered from the server), or whether it is configured by a client (server-provided true, possible e.g. for service overlays managed through a controller). Clients should not attempt to make modifications to network instances with server-provided set to true; when they do, they need to be aware that any modifications they make are subject to be reverted by the server. For servers that support NACM (Netconf Access Control Model), data node rules should ideally prevent write access by other clients to the network instance when server-provided is set to true."
                    },
                    "supportingNetwork": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "title": "Network",
                  "description": "Configuration parameters for NSP L3 topology"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Network»"
            }
          },
          "title": "ResponseData«Network»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4NspNetL3NetworkNetworkId"
      },
      "task": true
    },
    {
      "name": "getV4NspNetL3Networks",
      "summary": "Get NSP networks. A list of networks where each network has a UUID",
      "description": "Get NSP networks. A list of networks where each network has a UUID",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "network": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "link": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "destination": {
                                  "type": "object",
                                  "required": [
                                    "destNode"
                                  ],
                                  "properties": {
                                    "destNode": {
                                      "type": "string",
                                      "description": "Destination node identifier, must be in the same network."
                                    },
                                    "destTp": {
                                      "type": "string",
                                      "description": "Termination point within destination node that terminates the link."
                                    }
                                  },
                                  "title": "Destination",
                                  "description": "This container holds the logical destination of a particular link."
                                },
                                "linkId": {
                                  "type": "object",
                                  "properties": {
                                    "uri": {
                                      "type": "object",
                                      "description": ""
                                    }
                                  },
                                  "title": "LinkId",
                                  "description": "An identifier for a link in a topology. The precise structure of the link-id will be up to the implementation. The identifier SHOULD be chosen such that the same link in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of link and/or the type of topology that the link is a part of."
                                },
                                "nspLink": {
                                  "type": "object",
                                  "properties": {
                                    "linkConfig": {
                                      "type": "object",
                                      "description": "Configuration data"
                                    },
                                    "linkState": {
                                      "type": "object",
                                      "description": "Operational state data"
                                    }
                                  },
                                  "title": "NspLink",
                                  "description": "Augmentation for NSP link"
                                },
                                "source": {
                                  "type": "object",
                                  "required": [
                                    "sourceNode"
                                  ],
                                  "properties": {
                                    "sourceNode": {
                                      "type": "string",
                                      "description": "Source node identifier, must be in same topology."
                                    },
                                    "sourceTp": {
                                      "type": "string",
                                      "description": "Termination point within source node that terminates the link."
                                    }
                                  },
                                  "title": "Source",
                                  "description": "This container holds the logical source of a particular link."
                                },
                                "supportingLink": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "properties": {
                                      "linkRef": {
                                        "type": "string",
                                        "description": "This leaf identifies a link which is a part of this link's underlay. Reference loops in which a link identifies itself as its underlay, either directly or transitively, are not allowed."
                                      },
                                      "networkRef": {
                                        "type": "string",
                                        "description": "This leaf identifies in which underlay topology the supporting link is present."
                                      }
                                    },
                                    "title": "SupportingLink"
                                  }
                                }
                              },
                              "title": "Link",
                              "description": "Configuration parameters for NSP at link level"
                            }
                          },
                          "networkId": {
                            "type": "object",
                            "properties": {
                              "uri": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "NetworkId",
                            "description": "Identifier for a network. The precise structure of the network-id will be up to an implementation. The identifier SHOULD be chosen such that the same network will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of network."
                          },
                          "networkTypes": {
                            "type": "object",
                            "title": "NetworkTypes",
                            "description": "Serves as an augmentation target. The network type is indicated through corresponding presence containers augmented into this container."
                          },
                          "node": {
                            "type": "object",
                            "additionalProperties": {
                              "type": "object",
                              "properties": {
                                "nodeId": {
                                  "type": "object",
                                  "description": "Identifies a node uniquely within the containing network."
                                },
                                "nspNode": {
                                  "type": "object",
                                  "description": "Augmentation for NSP node"
                                },
                                "supportingNode": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "description": ""
                                  }
                                },
                                "terminationPoint": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "object",
                                    "description": ""
                                  }
                                }
                              },
                              "title": "Node"
                            }
                          },
                          "nspNetwork": {
                            "type": "object",
                            "properties": {
                              "networkConfig": {
                                "type": "object",
                                "description": "Configuration data"
                              },
                              "networkName": {
                                "type": "string",
                                "description": "The name of the network"
                              },
                              "networkState": {
                                "type": "object",
                                "description": "Operational state data"
                              }
                            },
                            "title": "NspNetwork",
                            "description": "Augmentation for NSP network"
                          },
                          "serverProvided": {
                            "type": "boolean",
                            "description": "Indicates whether the information concerning this particular network is populated by the server (server-provided true, the general case for network information discovered from the server), or whether it is configured by a client (server-provided true, possible e.g. for service overlays managed through a controller). Clients should not attempt to make modifications to network instances with server-provided set to true; when they do, they need to be aware that any modifications they make are subject to be reverted by the server. For servers that support NACM (Netconf Access Control Model), data node rules should ideally prevent write access by other clients to the network instance when server-provided is set to true."
                          },
                          "supportingNetwork": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "Network",
                        "description": "Configuration parameters for NSP L3 topology"
                      }
                    },
                    "nspNetworks": {
                      "type": "object",
                      "properties": {
                        "networksConfig": {
                          "type": "object",
                          "description": ""
                        },
                        "networksState": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "NspNetworks"
                    }
                  },
                  "title": "Networks"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Networks»"
            }
          },
          "title": "ResponseData«Networks»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4NspNetL3Networks"
      },
      "task": true
    },
    {
      "name": "getV4NspNetL3NodeNodeId",
      "summary": "Get NSP node. A node has a UUID, attributes and a list of termination-points",
      "description": "Get NSP node. A node has a UUID, attributes and a list of termination-points",
      "input": [
        {
          "name": "nodeId",
          "type": "string",
          "info": "UUID: Identifier for a node: string",
          "required": true,
          "schema": {
            "title": "nodeId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "nodeId": {
                      "type": "object",
                      "description": "Identifies a node uniquely within the containing network."
                    },
                    "nspNode": {
                      "type": "object",
                      "description": "Augmentation for NSP node"
                    },
                    "supportingNode": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "terminationPoint": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "description": ""
                      }
                    }
                  },
                  "title": "Node"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Node»"
            }
          },
          "title": "ResponseData«Node»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4NspNetL3NodeNodeId"
      },
      "task": true
    },
    {
      "name": "getNodesRouter",
      "summary": "Get NSP nodes by IGP Router ID. A node has a UUID, attributes and a list of termination-points",
      "description": "Get NSP nodes by IGP Router ID. A node has a UUID, attributes and a list of termination-points",
      "input": [
        {
          "name": "routerId",
          "type": "string",
          "info": "IPv4 IGP Router ID of the node: string",
          "required": true,
          "schema": {
            "title": "routerId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "networkId": {
                        "type": "string",
                        "description": "The ID of the network which this node belongs to"
                      },
                      "nodeData": {
                        "type": "object",
                        "properties": {
                          "nspNode": {
                            "type": "object",
                            "description": "Augmentation for NSP node"
                          }
                        },
                        "title": "NodeData",
                        "description": "Node data"
                      }
                    },
                    "title": "NspNodeWithNetwork",
                    "description": "Augmentation for NSP node"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«NspNodeWithNetwork»»"
            }
          },
          "title": "ResponseData«List«NspNodeWithNetwork»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNodesRouter"
      },
      "task": true
    },
    {
      "name": "getNodesSite",
      "summary": "Get NSP nodes by Site IP. A node has a UUID, attributes and a list of termination-points",
      "description": "Get NSP nodes by Site IP. A node has a UUID, attributes and a list of termination-points",
      "input": [
        {
          "name": "siteIp",
          "type": "string",
          "info": "IPv4 Site ID of the node: string",
          "required": true,
          "schema": {
            "title": "siteIp",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "networkId": {
                        "type": "string",
                        "description": "The ID of the network which this node belongs to"
                      },
                      "nodeData": {
                        "type": "object",
                        "properties": {
                          "nspNode": {
                            "type": "object",
                            "description": "Augmentation for NSP node"
                          }
                        },
                        "title": "NodeData",
                        "description": "Node data"
                      }
                    },
                    "title": "NspNodeWithNetwork",
                    "description": "Augmentation for NSP node"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«NspNodeWithNetwork»»"
            }
          },
          "title": "ResponseData«List«NspNodeWithNetwork»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNodesSite"
      },
      "task": true
    },
    {
      "name": "getV4NspNetL3TerminationPointTpId",
      "summary": "Get NSP termination-point. A termination-point has a UUID and attributes",
      "description": "Get NSP termination-point. A termination-point has a UUID and attributes",
      "input": [
        {
          "name": "tpId",
          "type": "string",
          "info": "UUID: Identifier for a termination-point: string",
          "required": true,
          "schema": {
            "title": "tpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "nspTerminationPoint": {
                      "type": "object",
                      "properties": {
                        "terminationPointConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "terminationPointState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspTerminationPoint",
                      "description": "Augmentation for NSP termination point"
                    },
                    "supportingTerminationPoint": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which topology the supporting termination point is present."
                          },
                          "nodeRef": {
                            "type": "string",
                            "description": "This leaf identifies in which node the supporting termination point is present."
                          },
                          "tpRef": {
                            "type": "string",
                            "description": "Reference to the underlay node, must be in a different topology"
                          }
                        },
                        "title": "SupportingTerminationPoint"
                      }
                    },
                    "tpId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "TpId",
                      "description": "An identifier for termination points (TPs) on a node. The precise structure of the tp-id will be up to the implementation. The identifier SHOULD be chosen such that the same termination point in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of termination point and/or the type of node that contains the termination point."
                    }
                  },
                  "title": "TerminationPoint"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TerminationPoint»"
            }
          },
          "title": "ResponseData«TerminationPoint»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4NspNetL3TerminationPointTpId"
      },
      "task": true
    },
    {
      "name": "getTerminationPointReverse",
      "summary": "Get NSP reverse termination-point for a given UUID. If the UUID corresponds to a termination point ",
      "description": "Get NSP reverse termination-point for a given UUID. If the UUID corresponds to a termination point on a point-to-point link, the returned termination point will be the termination point on the connected remote router. If the UUID corresponds to a termination point on a broadcast link, the returned termination point will be the reverse termination point connected to the source router",
      "input": [
        {
          "name": "tpId",
          "type": "string",
          "info": "UUID: Identifier for a termination-point: string",
          "required": true,
          "schema": {
            "title": "tpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "nspTerminationPoint": {
                      "type": "object",
                      "properties": {
                        "terminationPointConfig": {
                          "type": "object",
                          "description": "Configuration data"
                        },
                        "terminationPointState": {
                          "type": "object",
                          "description": "Operational state data"
                        }
                      },
                      "title": "NspTerminationPoint",
                      "description": "Augmentation for NSP termination point"
                    },
                    "supportingTerminationPoint": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "networkRef": {
                            "type": "string",
                            "description": "This leaf identifies in which topology the supporting termination point is present."
                          },
                          "nodeRef": {
                            "type": "string",
                            "description": "This leaf identifies in which node the supporting termination point is present."
                          },
                          "tpRef": {
                            "type": "string",
                            "description": "Reference to the underlay node, must be in a different topology"
                          }
                        },
                        "title": "SupportingTerminationPoint"
                      }
                    },
                    "tpId": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "TpId",
                      "description": "An identifier for termination points (TPs) on a node. The precise structure of the tp-id will be up to the implementation. The identifier SHOULD be chosen such that the same termination point in a real network topology will always be identified through the same identifier, even if the model is instantiated in separate datastores. An implementation MAY choose to capture semantics in the identifier, for example to indicate the type of termination point and/or the type of node that contains the termination point."
                    }
                  },
                  "title": "TerminationPoint"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TerminationPoint»"
            }
          },
          "title": "ResponseData«TerminationPoint»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTerminationPointReverse"
      },
      "task": true
    },
    {
      "name": "getTerminationPointsNodeip",
      "summary": "Get NSP termination-point for a given node ID and IP Address",
      "description": "Get NSP termination-point for a given node ID and IP Address",
      "input": [
        {
          "name": "ipAddress",
          "type": "string",
          "info": "The IP Address of the termination point: string",
          "required": true,
          "schema": {
            "title": "ipAddress",
            "type": "string"
          }
        },
        {
          "name": "nodeId",
          "type": "string",
          "info": "UUID: Identifier for a node: string",
          "required": true,
          "schema": {
            "title": "nodeId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "terminationPointConfig": {
                        "type": "object",
                        "description": "Configuration data"
                      },
                      "terminationPointState": {
                        "type": "object",
                        "description": "Operational state data"
                      }
                    },
                    "title": "NspTerminationPoint",
                    "description": "Augmentation for NSP termination point"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«NspTerminationPoint»»"
            }
          },
          "title": "ResponseData«List«NspTerminationPoint»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTerminationPointsNodeip"
      },
      "task": true
    },
    {
      "name": "createFlows",
      "summary": "Create flows",
      "description": "Create flows",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "flows: {\"data\": [{\"applicationGroupId\": 123, \"applicationId\": 123, \"cookie\": \"string\", \"datapathId\": \"string\", \"openflowInstruction\": {\"actions\": [{\"actionType\": \"Must be one of [OUT_PORT, EXPERIMENTER, SET_FIELD]\", \"experimenterActionType\": \"Must be one of [REDIRECT_TO_NEXTHOP, REDIRECT_TO_SVCT]\", \"ipAddress\": \"object\", \"isIndirect\": \"boolean\", \"outerVlanId\": 123, \"portId\": 123, \"sdpId\": 123, \"vcId\": 123, \"vlanId\": 123}], \"instructionType\": \"Must be one of [CLEAR_ACTIONS, APPLY_ACTIONS, WRITE_ACTIONS]\"}, \"openflowMatch\": {\"destIpAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"destPort\": 123, \"dscp\": {\"uint8\": 123}, \"ethernetType\": \"string\", \"inPort\": 123, \"ipProtocolType\": 123, \"outerVlanId\": 123, \"sourceIpAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"sourcePort\": 123, \"vlanId\": 123}, \"priority\": 123, \"tableId\": 123}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "applicationId",
                    "cookie",
                    "datapathId",
                    "priority",
                    "tableId"
                  ],
                  "properties": {
                    "applicationGroupId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The identification of the application group, used by the application to categorize this flow"
                    },
                    "applicationId": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The identification of the application which deployed the flow, negative numbers are reserved and should not be used"
                    },
                    "cookie": {
                      "type": "string",
                      "description": "The hexadecimal controller issued identifier for this flow"
                    },
                    "datapathId": {
                      "type": "string",
                      "description": "The hexadecimal openflow data-path id for this switch"
                    },
                    "openflowInstruction": {
                      "type": "object",
                      "properties": {
                        "actions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "actionType": {
                                "type": "string",
                                "description": "Type of the action",
                                "enum": [
                                  "OUT_PORT",
                                  "EXPERIMENTER",
                                  "SET_FIELD"
                                ]
                              },
                              "experimenterActionType": {
                                "type": "string",
                                "description": "Type of the experimenter action. Applicable only for experimenter actions",
                                "enum": [
                                  "REDIRECT_TO_NEXTHOP",
                                  "REDIRECT_TO_SVCT"
                                ]
                              },
                              "ipAddress": {
                                "type": "object",
                                "description": "Next Hop IP address"
                              },
                              "isIndirect": {
                                "type": "boolean",
                                "description": "Set the value for indirect hop"
                              },
                              "outerVlanId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Outer QinQ tag VlanId"
                              },
                              "portId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Openflow switch output port id"
                              },
                              "sdpId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "SDP id"
                              },
                              "vcId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Virtual circuit id"
                              },
                              "vlanId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Dot1Q tag or inner QinQ tag VlanId"
                              }
                            },
                            "title": "OpenflowAction",
                            "description": "Openflow action"
                          }
                        },
                        "instructionType": {
                          "type": "string",
                          "description": "Type of the instruction",
                          "enum": [
                            "CLEAR_ACTIONS",
                            "APPLY_ACTIONS",
                            "WRITE_ACTIONS"
                          ]
                        }
                      },
                      "title": "OpenflowInstruction",
                      "description": "The instruction to be performed on the flow"
                    },
                    "openflowMatch": {
                      "type": "object",
                      "properties": {
                        "destIpAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "destPort": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Destination (TCP or UDP) port number"
                        },
                        "dscp": {
                          "type": "object",
                          "properties": {
                            "uint8": {
                              "type": "integer",
                              "format": "int32"
                            }
                          },
                          "title": "Dscp",
                          "description": "The dscp type represents a Differentiated Services Code Point that may be used for marking packets in a traffic stream. In the value set and its semantics, this type is equivalent to the Dscp textual convention of the SMIv2."
                        },
                        "ethernetType": {
                          "type": "string",
                          "description": "Ethernet Type in hexadecimal (for example 0x800 for IPv4)"
                        },
                        "inPort": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Input port number"
                        },
                        "ipProtocolType": {
                          "type": "integer",
                          "format": "int32",
                          "description": "IP Protocol Type (for example 6 for TCP or 17 for UDP)"
                        },
                        "outerVlanId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Experimenter outer VlanId"
                        },
                        "sourceIpAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        },
                        "sourcePort": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Source (TCP or UDP) port number"
                        },
                        "vlanId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Dot1Q tag or inner QinQ tag VlanId"
                        }
                      },
                      "title": "OpenflowMatch",
                      "description": "The match criteria for this flow"
                    },
                    "priority": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The priority of the flow"
                    },
                    "tableId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The table id number within the switch"
                    }
                  },
                  "title": "OpenflowFlowEntryRequest",
                  "description": "Flows to be created"
                }
              }
            },
            "title": "Request«List«OpenflowFlowEntryRequest»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "result": {
              "type": "object",
              "properties": {}
            },
            "setOrExpired": {
              "type": "boolean"
            }
          },
          "title": "DeferredResult«ResponseData«List«OpenflowFlowEntry»»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createFlows"
      },
      "task": true
    },
    {
      "name": "deleteFlows",
      "summary": "Delete flows",
      "description": "Delete flows",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The unique identifers of the flows to be deleted: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "result": {
              "type": "object",
              "properties": {}
            },
            "setOrExpired": {
              "type": "boolean"
            }
          },
          "title": "DeferredResult«ResponseData«List«OpenflowFlowEntry»»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteFlows"
      },
      "task": true
    },
    {
      "name": "patchFlows",
      "summary": "Update flow instruction",
      "description": "Update flow instruction",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "flows: {\"data\": [{\"flowIds\": \"array\", \"openflowInstruction\": {\"actions\": [{\"actionType\": \"Must be one of [OUT_PORT, EXPERIMENTER, SET_FIELD]\", \"experimenterActionType\": \"Must be one of [REDIRECT_TO_NEXTHOP, REDIRECT_TO_SVCT]\", \"ipAddress\": \"object\", \"isIndirect\": \"boolean\", \"outerVlanId\": 123, \"portId\": 123, \"sdpId\": 123, \"vcId\": 123, \"vlanId\": 123}], \"instructionType\": \"Must be one of [CLEAR_ACTIONS, APPLY_ACTIONS, WRITE_ACTIONS]\"}}]}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "flowIds": {
                      "type": "array",
                      "description": "The unique identifiers of the flows for which the Instruction needs to be modified.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "openflowInstruction": {
                      "type": "object",
                      "properties": {
                        "actions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "actionType": {
                                "type": "string",
                                "description": "Type of the action",
                                "enum": [
                                  "OUT_PORT",
                                  "EXPERIMENTER",
                                  "SET_FIELD"
                                ]
                              },
                              "experimenterActionType": {
                                "type": "string",
                                "description": "Type of the experimenter action. Applicable only for experimenter actions",
                                "enum": [
                                  "REDIRECT_TO_NEXTHOP",
                                  "REDIRECT_TO_SVCT"
                                ]
                              },
                              "ipAddress": {
                                "type": "object",
                                "description": "Next Hop IP address"
                              },
                              "isIndirect": {
                                "type": "boolean",
                                "description": "Set the value for indirect hop"
                              },
                              "outerVlanId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Outer QinQ tag VlanId"
                              },
                              "portId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Openflow switch output port id"
                              },
                              "sdpId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "SDP id"
                              },
                              "vcId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Virtual circuit id"
                              },
                              "vlanId": {
                                "type": "integer",
                                "format": "int64",
                                "description": "Dot1Q tag or inner QinQ tag VlanId"
                              }
                            },
                            "title": "OpenflowAction",
                            "description": "Openflow action"
                          }
                        },
                        "instructionType": {
                          "type": "string",
                          "description": "Type of the instruction",
                          "enum": [
                            "CLEAR_ACTIONS",
                            "APPLY_ACTIONS",
                            "WRITE_ACTIONS"
                          ]
                        }
                      },
                      "title": "OpenflowInstruction",
                      "description": "The instruction to be performed on the flow"
                    }
                  },
                  "title": "OpenflowFlowUpdateEntry",
                  "description": "Openflow flow instruction update"
                }
              }
            },
            "title": "Request«List«OpenflowFlowUpdateEntry»»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "result": {
              "type": "object",
              "properties": {}
            },
            "setOrExpired": {
              "type": "boolean"
            }
          },
          "title": "DeferredResult«ResponseData«List«OpenflowFlowEntry»»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/patchFlows"
      },
      "task": true
    },
    {
      "name": "getFlowsearch",
      "summary": "Query flows based on search criteria",
      "description": "Query flows based on search criteria",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Search criteria: {\"data\": {\"applicationGroupId\": 123, \"applicationId\": 123, \"cookie\": \"string\", \"datapathId\": \"string\", \"headerOnly\": \"boolean\", \"openflowMatch\": {\"destIpAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"destPort\": 123, \"dscp\": {\"uint8\": 123}, \"ethernetType\": \"string\", \"inPort\": 123, \"ipProtocolType\": 123, \"outerVlanId\": 123, \"sourceIpAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}, \"sourcePort\": 123, \"vlanId\": 123}, \"priority\": 123, \"tableId\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "datapathId"
                ],
                "properties": {
                  "applicationGroupId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The identification of the application group, used by the application to categorize this flow"
                  },
                  "applicationId": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The identification number of the application which deployed the flow"
                  },
                  "cookie": {
                    "type": "string",
                    "description": "The hexadecimal identifier or its prefix for the flow"
                  },
                  "datapathId": {
                    "type": "string",
                    "description": "The hexadecimal openflow data-path id for this switch"
                  },
                  "headerOnly": {
                    "type": "boolean",
                    "description": "To control whether to fetch only flow headers or complete flow details"
                  },
                  "openflowMatch": {
                    "type": "object",
                    "properties": {
                      "destIpAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Prefix": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Prefix": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpPrefix",
                        "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                      },
                      "destPort": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Destination (TCP or UDP) port number"
                      },
                      "dscp": {
                        "type": "object",
                        "properties": {
                          "uint8": {
                            "type": "integer",
                            "format": "int32"
                          }
                        },
                        "title": "Dscp",
                        "description": "The dscp type represents a Differentiated Services Code Point that may be used for marking packets in a traffic stream. In the value set and its semantics, this type is equivalent to the Dscp textual convention of the SMIv2."
                      },
                      "ethernetType": {
                        "type": "string",
                        "description": "Ethernet Type in hexadecimal (for example 0x800 for IPv4)"
                      },
                      "inPort": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Input port number"
                      },
                      "ipProtocolType": {
                        "type": "integer",
                        "format": "int32",
                        "description": "IP Protocol Type (for example 6 for TCP or 17 for UDP)"
                      },
                      "outerVlanId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Experimenter outer VlanId"
                      },
                      "sourceIpAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Prefix": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Prefix": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpPrefix",
                        "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                      },
                      "sourcePort": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Source (TCP or UDP) port number"
                      },
                      "vlanId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Dot1Q tag or inner QinQ tag VlanId"
                      }
                    },
                    "title": "OpenflowMatch",
                    "description": "The match criteria for this flow"
                  },
                  "priority": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The priority of the flow"
                  },
                  "tableId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The table id number within the switch"
                  }
                },
                "title": "OpenflowFlowSearch",
                "description": "Search criteria"
              }
            },
            "title": "Request«OpenflowFlowSearch»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "result": {
              "type": "object",
              "properties": {}
            },
            "setOrExpired": {
              "type": "boolean"
            }
          },
          "title": "DeferredResult«ResponseData«List«OpenflowFlowEntry»»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getFlowsearch"
      },
      "task": true
    },
    {
      "name": "getFlowsearchById",
      "summary": "Query flows based on unique identifier",
      "description": "Query flows based on unique identifier",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The unique identifiers of the flows to find: {\"data\": {\"flowIds\": \"array\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "flowIds": {
                    "type": "array",
                    "description": "List of flows' unique identifers",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "title": "OpenflowFlowSearchById",
                "description": "The unique identifiers of the flows to find"
              }
            },
            "title": "Request«OpenflowFlowSearchById»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "applicationGroupId",
                      "applicationId",
                      "auditstate",
                      "cookie",
                      "datapathId",
                      "flowId",
                      "lifecycle",
                      "priority",
                      "tableId"
                    ],
                    "properties": {
                      "applicationGroupId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The identification of the application group, used by the application to categorize this flow"
                      },
                      "applicationId": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The identification of the application which deployed the flow, negative numbers are reserved and should not be used"
                      },
                      "auditstate": {
                        "type": "string",
                        "description": "The audit state of the flow",
                        "enum": [
                          "SUCCESS",
                          "NOT_DONE",
                          "FAILURE"
                        ]
                      },
                      "cookie": {
                        "type": "string",
                        "description": "The hexadecimal controller issued identifier for this flow"
                      },
                      "datapathId": {
                        "type": "string",
                        "description": "The hexadecimal openflow data-path id for this switch"
                      },
                      "flowId": {
                        "type": "string",
                        "description": "The unique identifier of the flow, this is auto generated on the server"
                      },
                      "lifecycle": {
                        "type": "string",
                        "description": "The lifecycle of the flow",
                        "enum": [
                          "PENDING_DELETE",
                          "NO_ACTION",
                          "DEPLOYED",
                          "PENDING_SYNC",
                          "DELETED",
                          "PENDING_CREATE",
                          "PENDING_MODIFICATION"
                        ]
                      },
                      "openflowInstruction": {
                        "type": "object",
                        "properties": {
                          "actions": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "actionType": {
                                  "type": "string",
                                  "description": "Type of the action",
                                  "enum": [
                                    "OUT_PORT",
                                    "EXPERIMENTER",
                                    "SET_FIELD"
                                  ]
                                },
                                "experimenterActionType": {
                                  "type": "string",
                                  "description": "Type of the experimenter action. Applicable only for experimenter actions",
                                  "enum": [
                                    "REDIRECT_TO_NEXTHOP",
                                    "REDIRECT_TO_SVCT"
                                  ]
                                },
                                "ipAddress": {
                                  "type": "object",
                                  "description": "Next Hop IP address"
                                },
                                "isIndirect": {
                                  "type": "boolean",
                                  "description": "Set the value for indirect hop"
                                },
                                "outerVlanId": {
                                  "type": "integer",
                                  "format": "int64",
                                  "description": "Outer QinQ tag VlanId"
                                },
                                "portId": {
                                  "type": "integer",
                                  "format": "int64",
                                  "description": "Openflow switch output port id"
                                },
                                "sdpId": {
                                  "type": "integer",
                                  "format": "int64",
                                  "description": "SDP id"
                                },
                                "vcId": {
                                  "type": "integer",
                                  "format": "int64",
                                  "description": "Virtual circuit id"
                                },
                                "vlanId": {
                                  "type": "integer",
                                  "format": "int64",
                                  "description": "Dot1Q tag or inner QinQ tag VlanId"
                                }
                              },
                              "title": "OpenflowAction",
                              "description": "Openflow action"
                            }
                          },
                          "instructionType": {
                            "type": "string",
                            "description": "Type of the instruction",
                            "enum": [
                              "CLEAR_ACTIONS",
                              "APPLY_ACTIONS",
                              "WRITE_ACTIONS"
                            ]
                          }
                        },
                        "title": "OpenflowInstruction",
                        "description": "The instruction to be performed on the flow"
                      },
                      "openflowMatch": {
                        "type": "object",
                        "properties": {
                          "destIpAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          },
                          "destPort": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Destination (TCP or UDP) port number"
                          },
                          "dscp": {
                            "type": "object",
                            "properties": {
                              "uint8": {
                                "type": "integer",
                                "format": "int32"
                              }
                            },
                            "title": "Dscp",
                            "description": "The dscp type represents a Differentiated Services Code Point that may be used for marking packets in a traffic stream. In the value set and its semantics, this type is equivalent to the Dscp textual convention of the SMIv2."
                          },
                          "ethernetType": {
                            "type": "string",
                            "description": "Ethernet Type in hexadecimal (for example 0x800 for IPv4)"
                          },
                          "inPort": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Input port number"
                          },
                          "ipProtocolType": {
                            "type": "integer",
                            "format": "int32",
                            "description": "IP Protocol Type (for example 6 for TCP or 17 for UDP)"
                          },
                          "outerVlanId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Experimenter outer VlanId"
                          },
                          "sourceIpAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          },
                          "sourcePort": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Source (TCP or UDP) port number"
                          },
                          "vlanId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Dot1Q tag or inner QinQ tag VlanId"
                          }
                        },
                        "title": "OpenflowMatch",
                        "description": "The match criteria for this flow"
                      },
                      "priority": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The priority of the flow"
                      },
                      "tableId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The table id number within the switch"
                      }
                    },
                    "title": "OpenflowFlowEntry",
                    "description": "Openflow flow entry"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpenflowFlowEntry»»"
            }
          },
          "title": "ResponseData«List«OpenflowFlowEntry»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getFlowsearchById"
      },
      "task": true
    },
    {
      "name": "getPorts",
      "summary": "Query all ports of an openflow switch",
      "description": "Query all ports of an openflow switch",
      "input": [
        {
          "name": "datapathId",
          "type": "string",
          "info": "The hexadecimal openflow data-path id for this switch: string",
          "required": true,
          "schema": {
            "title": "datapathId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "datapathId",
                      "hardwareAddress",
                      "portId",
                      "portName"
                    ],
                    "properties": {
                      "datapathId": {
                        "type": "string",
                        "description": "The hexadecimal openflow data-path id for this switch"
                      },
                      "hardwareAddress": {
                        "type": "string",
                        "description": "The hardware address of the port"
                      },
                      "portId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The port id which identifies the port"
                      },
                      "portName": {
                        "type": "string",
                        "description": "The name of the port"
                      }
                    },
                    "title": "OpenflowPort",
                    "description": "Openflow port"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpenflowPort»»"
            }
          },
          "title": "ResponseData«List«OpenflowPort»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPorts"
      },
      "task": true
    },
    {
      "name": "getSwitches",
      "summary": "Query all openflow switches",
      "description": "Query all openflow switches",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "datapathId",
                      "dpDescription",
                      "hwDescription",
                      "maxTables",
                      "mfgDescription",
                      "numberOfBuffers",
                      "openflowVersion",
                      "serialNumber",
                      "status",
                      "swDescription",
                      "switchAddress",
                      "vendorType"
                    ],
                    "properties": {
                      "datapathId": {
                        "type": "string",
                        "description": "The hexadecimal openflow data-path id for this switch"
                      },
                      "dpDescription": {
                        "type": "string",
                        "description": "Datapath description"
                      },
                      "hwDescription": {
                        "type": "string",
                        "description": "Hardware description"
                      },
                      "maxTables": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum number of tables supported on this switch"
                      },
                      "mfgDescription": {
                        "type": "string",
                        "description": "Manufacturer description"
                      },
                      "numberOfBuffers": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum number of buffers supported on this switch"
                      },
                      "openflowVersion": {
                        "type": "string",
                        "description": "The openflow protocol version for this switch",
                        "enum": [
                          "V140",
                          "V150",
                          "V10",
                          "V200",
                          "V131",
                          "V130"
                        ]
                      },
                      "serialNumber": {
                        "type": "string",
                        "description": "Serial number of this switch"
                      },
                      "status": {
                        "type": "string",
                        "description": "Status of this switch",
                        "enum": [
                          "DOWN",
                          "ACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "swDescription": {
                        "type": "string",
                        "description": "Software description"
                      },
                      "switchAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "vendorType": {
                        "type": "string",
                        "description": "Vendor of this switch",
                        "enum": [
                          "OTHER",
                          "NOKIA",
                          "ALCATEL"
                        ]
                      }
                    },
                    "title": "OpenflowSwitch",
                    "description": "Openflow switch information"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpenflowSwitch»»"
            }
          },
          "title": "ResponseData«List«OpenflowSwitch»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getSwitches"
      },
      "task": true
    },
    {
      "name": "getSwitchesInRouter",
      "summary": "Query all openflow switches in a router",
      "description": "Query all openflow switches in a router",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier for the selected network element router: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "datapathId",
                      "dpDescription",
                      "hwDescription",
                      "maxTables",
                      "mfgDescription",
                      "numberOfBuffers",
                      "openflowVersion",
                      "serialNumber",
                      "status",
                      "swDescription",
                      "switchAddress",
                      "vendorType"
                    ],
                    "properties": {
                      "datapathId": {
                        "type": "string",
                        "description": "The hexadecimal openflow data-path id for this switch"
                      },
                      "dpDescription": {
                        "type": "string",
                        "description": "Datapath description"
                      },
                      "hwDescription": {
                        "type": "string",
                        "description": "Hardware description"
                      },
                      "maxTables": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum number of tables supported on this switch"
                      },
                      "mfgDescription": {
                        "type": "string",
                        "description": "Manufacturer description"
                      },
                      "numberOfBuffers": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum number of buffers supported on this switch"
                      },
                      "openflowVersion": {
                        "type": "string",
                        "description": "The openflow protocol version for this switch",
                        "enum": [
                          "V140",
                          "V150",
                          "V10",
                          "V200",
                          "V131",
                          "V130"
                        ]
                      },
                      "serialNumber": {
                        "type": "string",
                        "description": "Serial number of this switch"
                      },
                      "status": {
                        "type": "string",
                        "description": "Status of this switch",
                        "enum": [
                          "DOWN",
                          "ACTIVE",
                          "UNKNOWN"
                        ]
                      },
                      "swDescription": {
                        "type": "string",
                        "description": "Software description"
                      },
                      "switchAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "vendorType": {
                        "type": "string",
                        "description": "Vendor of this switch",
                        "enum": [
                          "OTHER",
                          "NOKIA",
                          "ALCATEL"
                        ]
                      }
                    },
                    "title": "OpenflowSwitch",
                    "description": "Openflow switch information"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpenflowSwitch»»"
            }
          },
          "title": "ResponseData«List«OpenflowSwitch»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSwitchesInRouter"
      },
      "task": true
    },
    {
      "name": "getTables",
      "summary": "Query all tables in an openflow switch",
      "description": "Query all tables in an openflow switch",
      "input": [
        {
          "name": "datapathId",
          "type": "string",
          "info": "The hexadecimal openflow data-path id for this switch: string",
          "required": true,
          "schema": {
            "title": "datapathId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "datapathId",
                      "maxEntries",
                      "tableId"
                    ],
                    "properties": {
                      "datapathId": {
                        "type": "string",
                        "description": "The hexadecimal openflow data-path id for this switch"
                      },
                      "maxEntries": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The number of entries the table supports"
                      },
                      "tableId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The table id number within the switch"
                      }
                    },
                    "title": "OpenflowTable",
                    "description": "Openflow table"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpenflowTable»»"
            }
          },
          "title": "ResponseData«List«OpenflowTable»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTables"
      },
      "task": true
    },
    {
      "name": "getV4Physicallinks",
      "summary": "Query all physical links",
      "description": "Query all physical links",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "boolean",
                        "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "destinationId": {
                        "type": "string",
                        "description": "The id of the destination network element"
                      },
                      "destinationName": {
                        "type": "string",
                        "description": "The name of the destination network element"
                      },
                      "destinationPortId": {
                        "type": "string",
                        "description": "The id of the destination NNI port"
                      },
                      "destinationPortName": {
                        "type": "string",
                        "description": "The name of the destination NNI port"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "linkCost": {
                        "type": "object",
                        "properties": {
                          "cost": {
                            "type": "number",
                            "format": "double",
                            "description": "Allocation cost of the physical link"
                          },
                          "latency": {
                            "type": "number",
                            "format": "double",
                            "description": "The latency of the physical link in microseconds"
                          }
                        },
                        "title": "LinkCost"
                      },
                      "lxcontainer": {
                        "type": "object",
                        "properties": {
                          "lxinformationList": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "LXContainer"
                      },
                      "lxpresent": {
                        "type": "boolean",
                        "description": "If there is a presence of an 1830 LX"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the physical link"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "sourceId": {
                        "type": "string",
                        "description": "The id of the source network element"
                      },
                      "sourceName": {
                        "type": "string",
                        "description": "The name of the source network element"
                      },
                      "sourcePortId": {
                        "type": "string",
                        "description": "The id of the source NNI port"
                      },
                      "sourcePortName": {
                        "type": "string",
                        "description": "The name of the source NNI port"
                      },
                      "srlgs": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "title": "PhysicalLink",
                    "description": "A physical link represents a link connecting different network elements."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«PhysicalLink»»"
            }
          },
          "title": "ResponseData«List«PhysicalLink»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4Physicallinks"
      },
      "task": true
    },
    {
      "name": "delete",
      "summary": "Delete an undiscovered physical link that was defined in NSP",
      "description": "Delete an undiscovered physical link that was defined in NSP",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "The unique identifier for the link to be deleted: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/delete"
      },
      "task": true
    },
    {
      "name": "create",
      "summary": "Define an undicovered physical link in NSP",
      "description": "Define an undicovered physical link in NSP",
      "input": [
        {
          "name": "destId",
          "type": "string",
          "info": "The unique identifier for the destination port: string",
          "required": true,
          "schema": {
            "title": "destId",
            "type": "string"
          }
        },
        {
          "name": "srcId",
          "type": "string",
          "info": "The unique identifier for the source port: string",
          "required": true,
          "schema": {
            "title": "srcId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "boolean",
                      "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "destinationId": {
                      "type": "string",
                      "description": "The id of the destination network element"
                    },
                    "destinationName": {
                      "type": "string",
                      "description": "The name of the destination network element"
                    },
                    "destinationPortId": {
                      "type": "string",
                      "description": "The id of the destination NNI port"
                    },
                    "destinationPortName": {
                      "type": "string",
                      "description": "The name of the destination NNI port"
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "linkCost": {
                      "type": "object",
                      "properties": {
                        "cost": {
                          "type": "number",
                          "format": "double",
                          "description": "Allocation cost of the physical link"
                        },
                        "latency": {
                          "type": "number",
                          "format": "double",
                          "description": "The latency of the physical link in microseconds"
                        }
                      },
                      "title": "LinkCost"
                    },
                    "lxcontainer": {
                      "type": "object",
                      "properties": {
                        "lxinformationList": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        }
                      },
                      "title": "LXContainer"
                    },
                    "lxpresent": {
                      "type": "boolean",
                      "description": "If there is a presence of an 1830 LX"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the physical link"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "sourceId": {
                      "type": "string",
                      "description": "The id of the source network element"
                    },
                    "sourceName": {
                      "type": "string",
                      "description": "The name of the source network element"
                    },
                    "sourcePortId": {
                      "type": "string",
                      "description": "The id of the source NNI port"
                    },
                    "sourcePortName": {
                      "type": "string",
                      "description": "The name of the source NNI port"
                    },
                    "srlgs": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "title": "PhysicalLink",
                  "description": "A physical link represents a link connecting different network elements."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«PhysicalLink»"
            }
          },
          "title": "ResponseData«PhysicalLink»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/create"
      },
      "task": true
    },
    {
      "name": "getV4PhysicallinksUuid",
      "summary": "Find a physical link by a unique identifier",
      "description": "Find a physical link by a unique identifier",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "bidirectional": {
                      "type": "boolean",
                      "description": "The direction of the physical link is either BIDIRECTIONAL or UNIDIRECTIONAL"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "destinationId": {
                      "type": "string",
                      "description": "The id of the destination network element"
                    },
                    "destinationName": {
                      "type": "string",
                      "description": "The name of the destination network element"
                    },
                    "destinationPortId": {
                      "type": "string",
                      "description": "The id of the destination NNI port"
                    },
                    "destinationPortName": {
                      "type": "string",
                      "description": "The name of the destination NNI port"
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "linkCost": {
                      "type": "object",
                      "properties": {
                        "cost": {
                          "type": "number",
                          "format": "double",
                          "description": "Allocation cost of the physical link"
                        },
                        "latency": {
                          "type": "number",
                          "format": "double",
                          "description": "The latency of the physical link in microseconds"
                        }
                      },
                      "title": "LinkCost"
                    },
                    "lxcontainer": {
                      "type": "object",
                      "properties": {
                        "lxinformationList": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        }
                      },
                      "title": "LXContainer"
                    },
                    "lxpresent": {
                      "type": "boolean",
                      "description": "If there is a presence of an 1830 LX"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the physical link"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "sourceId": {
                      "type": "string",
                      "description": "The id of the source network element"
                    },
                    "sourceName": {
                      "type": "string",
                      "description": "The name of the source network element"
                    },
                    "sourcePortId": {
                      "type": "string",
                      "description": "The id of the source NNI port"
                    },
                    "sourcePortName": {
                      "type": "string",
                      "description": "The name of the source NNI port"
                    },
                    "srlgs": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "title": "PhysicalLink",
                  "description": "A physical link represents a link connecting different network elements."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«PhysicalLink»"
            }
          },
          "title": "ResponseData«PhysicalLink»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4PhysicallinksUuid"
      },
      "task": true
    },
    {
      "name": "getAllIpOpticalCorrelationPolicy",
      "summary": "Query all IP Optical correlation policies",
      "description": "Query all IP Optical correlation policies",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "latencyUploadPolicy": {
                        "type": "string",
                        "description": "Policy to indicate how the latency changes in optical network need to be uploaded to IP Controller app",
                        "enum": [
                          "auto",
                          "manual"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "srlgUploadPolicy": {
                        "type": "string",
                        "description": "Policy to indicate how the SRLG changes in optical network need to be uploaded to IP Controller app",
                        "enum": [
                          "auto",
                          "manual"
                        ]
                      }
                    },
                    "title": "IpOpticalCorrelationPolicy",
                    "description": "IP Optical correlation policies"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«IpOpticalCorrelationPolicy»»"
            }
          },
          "title": "ResponseData«List«IpOpticalCorrelationPolicy»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllIpOpticalCorrelationPolicy"
      },
      "task": true
    },
    {
      "name": "createIpOpticalCorrelationPolicy",
      "summary": "Create an IP Optical correlation policy",
      "description": "Create an IP Optical correlation policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IP Optical correlation policies: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"latencyUploadPolicy\": \"Must be one of [auto, manual]\", \"name\": \"string\", \"objectDescription\": \"string\", \"srlgUploadPolicy\": \"Must be one of [auto, manual]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "latencyUploadPolicy": {
                    "type": "string",
                    "description": "Policy to indicate how the latency changes in optical network need to be uploaded to IP Controller app",
                    "enum": [
                      "auto",
                      "manual"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "srlgUploadPolicy": {
                    "type": "string",
                    "description": "Policy to indicate how the SRLG changes in optical network need to be uploaded to IP Controller app",
                    "enum": [
                      "auto",
                      "manual"
                    ]
                  }
                },
                "title": "IpOpticalCorrelationPolicy",
                "description": "IP Optical correlation policies"
              }
            },
            "title": "Request«IpOpticalCorrelationPolicy»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "latencyUploadPolicy": {
                      "type": "string",
                      "description": "Policy to indicate how the latency changes in optical network need to be uploaded to IP Controller app",
                      "enum": [
                        "auto",
                        "manual"
                      ]
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "srlgUploadPolicy": {
                      "type": "string",
                      "description": "Policy to indicate how the SRLG changes in optical network need to be uploaded to IP Controller app",
                      "enum": [
                        "auto",
                        "manual"
                      ]
                    }
                  },
                  "title": "IpOpticalCorrelationPolicy",
                  "description": "IP Optical correlation policies"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«IpOpticalCorrelationPolicy»"
            }
          },
          "title": "ResponseData«IpOpticalCorrelationPolicy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createIpOpticalCorrelationPolicy"
      },
      "task": true
    },
    {
      "name": "getIpOpticalCorrelationPolicy",
      "summary": "Query an IP Optical correlation policy",
      "description": "Query an IP Optical correlation policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "Policy id: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "latencyUploadPolicy": {
                      "type": "string",
                      "description": "Policy to indicate how the latency changes in optical network need to be uploaded to IP Controller app",
                      "enum": [
                        "auto",
                        "manual"
                      ]
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "srlgUploadPolicy": {
                      "type": "string",
                      "description": "Policy to indicate how the SRLG changes in optical network need to be uploaded to IP Controller app",
                      "enum": [
                        "auto",
                        "manual"
                      ]
                    }
                  },
                  "title": "IpOpticalCorrelationPolicy",
                  "description": "IP Optical correlation policies"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«IpOpticalCorrelationPolicy»"
            }
          },
          "title": "ResponseData«IpOpticalCorrelationPolicy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIpOpticalCorrelationPolicy"
      },
      "task": true
    },
    {
      "name": "updateIpOpticalCorrelationPolicy",
      "summary": "Update an IP Optical correlation policy",
      "description": "Update an IP Optical correlation policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "IP Optical correlation policies: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"latencyUploadPolicy\": \"Must be one of [auto, manual]\", \"name\": \"string\", \"objectDescription\": \"string\", \"srlgUploadPolicy\": \"Must be one of [auto, manual]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "latencyUploadPolicy": {
                    "type": "string",
                    "description": "Policy to indicate how the latency changes in optical network need to be uploaded to IP Controller app",
                    "enum": [
                      "auto",
                      "manual"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "srlgUploadPolicy": {
                    "type": "string",
                    "description": "Policy to indicate how the SRLG changes in optical network need to be uploaded to IP Controller app",
                    "enum": [
                      "auto",
                      "manual"
                    ]
                  }
                },
                "title": "IpOpticalCorrelationPolicy",
                "description": "IP Optical correlation policies"
              }
            },
            "title": "Request«IpOpticalCorrelationPolicy»"
          }
        },
        {
          "name": "policyId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateIpOpticalCorrelationPolicy"
      },
      "task": true
    },
    {
      "name": "deleteIpOpticalCorrelationPolicy",
      "summary": "Delete an IP Optical correlation policy",
      "description": "Delete an IP Optical correlation policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "Policy id: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIpOpticalCorrelationPolicy"
      },
      "task": true
    },
    {
      "name": "getAllRdRtRanges",
      "summary": "Query all L3VPN RT/RD policies",
      "description": "Query all L3VPN RT/RD policies",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maxAssignedForRd": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum assigned number for route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "maxAssignedForRt": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The maximum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "maxAssignedForRtExtranet": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The maximum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "minAssignedForRd": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The minimum value that can be assigned for the route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "minAssignedForRt": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The minimum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "minAssignedForRtExtranet": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The minimum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "networkASForRd": {
                        "type": "boolean",
                        "description": "Specifies whether or not the network AS number will be used for the route distinguisher"
                      },
                      "networkASForRt": {
                        "type": "boolean",
                        "description": "Specifies whether or not the network AS number will be used for the Intranet route target"
                      },
                      "networkASForRtExtranet": {
                        "type": "boolean",
                        "description": "Specifies whether or not the network AS number will be used for the Extranet route target"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "policyType": {
                        "type": "string",
                        "description": "Specifies L3VPN RT/RD policy type. Type can be RD and RT, RD only, or RT only.",
                        "enum": [
                          "RD_ONLY",
                          "RD_AND_RT",
                          "RT_EXTRANET_ONLY",
                          "RT_ONLY"
                        ]
                      },
                      "rdAS": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The customer-specified AS number for the route distinguisher. For type 0, the value must be between 1 and 65535, inclusive. For Type 2, the value must be between 1 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                      },
                      "rdType": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The route distinguisher type. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                      },
                      "rtAS": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The customer-specified AS number for the Intranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                      },
                      "rtExtranetAS": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The customer-specified AS number for the Extranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                      },
                      "rtExtranetType": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The Extranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                      },
                      "rtType": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The Intranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                      }
                    },
                    "title": "L3vpnRdRtPolicy",
                    "description": "L3VPN RT/RD policy"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«L3vpnRdRtPolicy»»"
            }
          },
          "title": "ResponseData«List«L3vpnRdRtPolicy»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllRdRtRanges"
      },
      "task": true
    },
    {
      "name": "createRdRtRanges",
      "summary": "Create a L3VPN RT/RD policy",
      "description": "Create a L3VPN RT/RD policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "L3VPN RT/RD policy: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"maxAssignedForRd\": 123, \"maxAssignedForRt\": 123, \"maxAssignedForRtExtranet\": 123, \"minAssignedForRd\": 123, \"minAssignedForRt\": 123, \"minAssignedForRtExtranet\": 123, \"name\": \"string\", \"networkASForRd\": \"boolean\", \"networkASForRt\": \"boolean\", \"networkASForRtExtranet\": \"boolean\", \"objectDescription\": \"string\", \"policyType\": \"Must be one of [RD_ONLY, RD_AND_RT, RT_EXTRANET_ONLY, RT_ONLY]\", \"rdAS\": 123, \"rdType\": 123, \"rtAS\": 123, \"rtExtranetAS\": 123, \"rtExtranetType\": 123, \"rtType\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxAssignedForRd": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum assigned number for route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "maxAssignedForRt": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The maximum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "maxAssignedForRtExtranet": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The maximum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRd": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRt": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRtExtranet": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "networkASForRd": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the route distinguisher"
                  },
                  "networkASForRt": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the Intranet route target"
                  },
                  "networkASForRtExtranet": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the Extranet route target"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "policyType": {
                    "type": "string",
                    "description": "Specifies L3VPN RT/RD policy type. Type can be RD and RT, RD only, or RT only.",
                    "enum": [
                      "RD_ONLY",
                      "RD_AND_RT",
                      "RT_EXTRANET_ONLY",
                      "RT_ONLY"
                    ]
                  },
                  "rdAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the route distinguisher. For type 0, the value must be between 1 and 65535, inclusive. For Type 2, the value must be between 1 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rdType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The route distinguisher type. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the Intranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtExtranetAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the Extranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtExtranetType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The Extranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The Intranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  }
                },
                "title": "L3vpnRdRtPolicy",
                "description": "L3VPN RT/RD policy"
              }
            },
            "title": "Request«L3vpnRdRtPolicy»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxAssignedForRd": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Maximum assigned number for route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "maxAssignedForRt": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The maximum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "maxAssignedForRtExtranet": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The maximum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "minAssignedForRd": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The minimum value that can be assigned for the route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "minAssignedForRt": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The minimum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "minAssignedForRtExtranet": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The minimum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "networkASForRd": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network AS number will be used for the route distinguisher"
                    },
                    "networkASForRt": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network AS number will be used for the Intranet route target"
                    },
                    "networkASForRtExtranet": {
                      "type": "boolean",
                      "description": "Specifies whether or not the network AS number will be used for the Extranet route target"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "policyType": {
                      "type": "string",
                      "description": "Specifies L3VPN RT/RD policy type. Type can be RD and RT, RD only, or RT only.",
                      "enum": [
                        "RD_ONLY",
                        "RD_AND_RT",
                        "RT_EXTRANET_ONLY",
                        "RT_ONLY"
                      ]
                    },
                    "rdAS": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The customer-specified AS number for the route distinguisher. For type 0, the value must be between 1 and 65535, inclusive. For Type 2, the value must be between 1 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                    },
                    "rdType": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The route distinguisher type. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                    },
                    "rtAS": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The customer-specified AS number for the Intranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                    },
                    "rtExtranetAS": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The customer-specified AS number for the Extranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                    },
                    "rtExtranetType": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The Extranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                    },
                    "rtType": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The Intranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                    }
                  },
                  "title": "L3vpnRdRtPolicy",
                  "description": "L3VPN RT/RD policy"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L3vpnRdRtPolicy»"
            }
          },
          "title": "ResponseData«L3vpnRdRtPolicy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createRdRtRanges"
      },
      "task": true
    },
    {
      "name": "updateRdRtRanges",
      "summary": "Update a L3VPN RT/RD policy",
      "description": "Update a L3VPN RT/RD policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "L3VPN RT/RD policy: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"maxAssignedForRd\": 123, \"maxAssignedForRt\": 123, \"maxAssignedForRtExtranet\": 123, \"minAssignedForRd\": 123, \"minAssignedForRt\": 123, \"minAssignedForRtExtranet\": 123, \"name\": \"string\", \"networkASForRd\": \"boolean\", \"networkASForRt\": \"boolean\", \"networkASForRtExtranet\": \"boolean\", \"objectDescription\": \"string\", \"policyType\": \"Must be one of [RD_ONLY, RD_AND_RT, RT_EXTRANET_ONLY, RT_ONLY]\", \"rdAS\": 123, \"rdType\": 123, \"rtAS\": 123, \"rtExtranetAS\": 123, \"rtExtranetType\": 123, \"rtType\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxAssignedForRd": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum assigned number for route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "maxAssignedForRt": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The maximum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "maxAssignedForRtExtranet": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The maximum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRd": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the route distinguisher. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRt": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the Intranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "minAssignedForRtExtranet": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The minimum value that can be assigned for the Extranet route target. For type 0, the value must be between 0 and 4294967295, inclusive. For Type 2, the value must be between 0 and 65535, inclusive"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "networkASForRd": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the route distinguisher"
                  },
                  "networkASForRt": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the Intranet route target"
                  },
                  "networkASForRtExtranet": {
                    "type": "boolean",
                    "description": "Specifies whether or not the network AS number will be used for the Extranet route target"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "policyType": {
                    "type": "string",
                    "description": "Specifies L3VPN RT/RD policy type. Type can be RD and RT, RD only, or RT only.",
                    "enum": [
                      "RD_ONLY",
                      "RD_AND_RT",
                      "RT_EXTRANET_ONLY",
                      "RT_ONLY"
                    ]
                  },
                  "rdAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the route distinguisher. For type 0, the value must be between 1 and 65535, inclusive. For Type 2, the value must be between 1 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rdType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The route distinguisher type. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the Intranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtExtranetAS": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-specified AS number for the Extranet route target. For type 0, the value must be between 0 and 65535, inclusive. For Type 2, the value must be between 0 and 4294967295, inclusive. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtExtranetType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The Extranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  },
                  "rtType": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The Intranet route target. The value can be 0/1/2. When the policy is configured using the network AS number, this value is not checked"
                  }
                },
                "title": "L3vpnRdRtPolicy",
                "description": "L3VPN RT/RD policy"
              }
            },
            "title": "Request«L3vpnRdRtPolicy»"
          }
        },
        {
          "name": "policyId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateRdRtRanges"
      },
      "task": true
    },
    {
      "name": "deleteRdRtRanges",
      "summary": "Delete an existing L3VPN RT/RD policy.",
      "description": "Delete an existing L3VPN RT/RD policy.",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "policyId: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteRdRtRanges"
      },
      "task": true
    },
    {
      "name": "getAllRouterPortProtectionGroupPolicy",
      "summary": "Query all router port protection group policies",
      "description": "Query all router port protection group policies",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "reversionPolicy": {
                        "type": "object",
                        "properties": {
                          "reversionMode": {
                            "type": "string",
                            "description": "Reversion mode",
                            "enum": [
                              "revertive",
                              "non_revertive"
                            ]
                          },
                          "waitToRevertTime": {
                            "type": "object",
                            "properties": {
                              "time": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "WaitToRevertTime",
                            "description": "Wait to revert time"
                          }
                        },
                        "title": "ReversionPolicy",
                        "description": "Router Port Protection Group reversion policy"
                      },
                      "switchPolicy": {
                        "type": "object",
                        "properties": {
                          "waitToSwitchTime": {
                            "type": "object",
                            "properties": {
                              "time": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "WaitToSwitchTime",
                            "description": "Wait to switch time"
                          }
                        },
                        "title": "SwitchPolicy",
                        "description": "Router Port Protection Group switch policy"
                      }
                    },
                    "title": "RouterPortProtectionGroupPolicy",
                    "description": "Router Port Protection Group policies"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«RouterPortProtectionGroupPolicy»»"
            }
          },
          "title": "ResponseData«List«RouterPortProtectionGroupPolicy»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllRouterPortProtectionGroupPolicy"
      },
      "task": true
    },
    {
      "name": "createRouterPortProtectionGroupPolicy",
      "summary": "Create a router port protection group policy",
      "description": "Create a router port protection group policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Router Port Protection Group policies: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"reversionPolicy\": {\"reversionMode\": \"Must be one of [revertive, non_revertive]\", \"waitToRevertTime\": {\"time\": \"object\"}}, \"switchPolicy\": {\"waitToSwitchTime\": {\"time\": \"object\"}}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "reversionPolicy": {
                    "type": "object",
                    "properties": {
                      "reversionMode": {
                        "type": "string",
                        "description": "Reversion mode",
                        "enum": [
                          "revertive",
                          "non_revertive"
                        ]
                      },
                      "waitToRevertTime": {
                        "type": "object",
                        "properties": {
                          "time": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "WaitToRevertTime",
                        "description": "Wait to revert time"
                      }
                    },
                    "title": "ReversionPolicy",
                    "description": "Router Port Protection Group reversion policy"
                  },
                  "switchPolicy": {
                    "type": "object",
                    "properties": {
                      "waitToSwitchTime": {
                        "type": "object",
                        "properties": {
                          "time": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "WaitToSwitchTime",
                        "description": "Wait to switch time"
                      }
                    },
                    "title": "SwitchPolicy",
                    "description": "Router Port Protection Group switch policy"
                  }
                },
                "title": "RouterPortProtectionGroupPolicy",
                "description": "Router Port Protection Group policies"
              }
            },
            "title": "Request«RouterPortProtectionGroupPolicy»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "reversionPolicy": {
                      "type": "object",
                      "properties": {
                        "reversionMode": {
                          "type": "string",
                          "description": "Reversion mode",
                          "enum": [
                            "revertive",
                            "non_revertive"
                          ]
                        },
                        "waitToRevertTime": {
                          "type": "object",
                          "properties": {
                            "time": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "WaitToRevertTime",
                          "description": "Wait to revert time"
                        }
                      },
                      "title": "ReversionPolicy",
                      "description": "Router Port Protection Group reversion policy"
                    },
                    "switchPolicy": {
                      "type": "object",
                      "properties": {
                        "waitToSwitchTime": {
                          "type": "object",
                          "properties": {
                            "time": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "WaitToSwitchTime",
                          "description": "Wait to switch time"
                        }
                      },
                      "title": "SwitchPolicy",
                      "description": "Router Port Protection Group switch policy"
                    }
                  },
                  "title": "RouterPortProtectionGroupPolicy",
                  "description": "Router Port Protection Group policies"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«RouterPortProtectionGroupPolicy»"
            }
          },
          "title": "ResponseData«RouterPortProtectionGroupPolicy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createRouterPortProtectionGroupPolicy"
      },
      "task": true
    },
    {
      "name": "getRouterPortProtectionGroupPolicy",
      "summary": "Query a router port protection group policy",
      "description": "Query a router port protection group policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "Policy id: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "reversionPolicy": {
                      "type": "object",
                      "properties": {
                        "reversionMode": {
                          "type": "string",
                          "description": "Reversion mode",
                          "enum": [
                            "revertive",
                            "non_revertive"
                          ]
                        },
                        "waitToRevertTime": {
                          "type": "object",
                          "properties": {
                            "time": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "WaitToRevertTime",
                          "description": "Wait to revert time"
                        }
                      },
                      "title": "ReversionPolicy",
                      "description": "Router Port Protection Group reversion policy"
                    },
                    "switchPolicy": {
                      "type": "object",
                      "properties": {
                        "waitToSwitchTime": {
                          "type": "object",
                          "properties": {
                            "time": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "WaitToSwitchTime",
                          "description": "Wait to switch time"
                        }
                      },
                      "title": "SwitchPolicy",
                      "description": "Router Port Protection Group switch policy"
                    }
                  },
                  "title": "RouterPortProtectionGroupPolicy",
                  "description": "Router Port Protection Group policies"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«RouterPortProtectionGroupPolicy»"
            }
          },
          "title": "ResponseData«RouterPortProtectionGroupPolicy»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getRouterPortProtectionGroupPolicy"
      },
      "task": true
    },
    {
      "name": "updateRouterPortProtectionGroupPolicy",
      "summary": "Update a router port protection group policy",
      "description": "Update a router port protection group policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "Router Port Protection Group policies: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"reversionPolicy\": {\"reversionMode\": \"Must be one of [revertive, non_revertive]\", \"waitToRevertTime\": {\"time\": \"object\"}}, \"switchPolicy\": {\"waitToSwitchTime\": {\"time\": \"object\"}}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "reversionPolicy": {
                    "type": "object",
                    "properties": {
                      "reversionMode": {
                        "type": "string",
                        "description": "Reversion mode",
                        "enum": [
                          "revertive",
                          "non_revertive"
                        ]
                      },
                      "waitToRevertTime": {
                        "type": "object",
                        "properties": {
                          "time": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "WaitToRevertTime",
                        "description": "Wait to revert time"
                      }
                    },
                    "title": "ReversionPolicy",
                    "description": "Router Port Protection Group reversion policy"
                  },
                  "switchPolicy": {
                    "type": "object",
                    "properties": {
                      "waitToSwitchTime": {
                        "type": "object",
                        "properties": {
                          "time": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "WaitToSwitchTime",
                        "description": "Wait to switch time"
                      }
                    },
                    "title": "SwitchPolicy",
                    "description": "Router Port Protection Group switch policy"
                  }
                },
                "title": "RouterPortProtectionGroupPolicy",
                "description": "Router Port Protection Group policies"
              }
            },
            "title": "Request«RouterPortProtectionGroupPolicy»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateRouterPortProtectionGroupPolicy"
      },
      "task": true
    },
    {
      "name": "deleteRouterPortProtectionGroupPolicy",
      "summary": "Delete a router port protection group policy",
      "description": "Delete a router port protection group policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "Policy id: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteRouterPortProtectionGroupPolicy"
      },
      "task": true
    },
    {
      "name": "createSteeringParameter",
      "summary": "Create a Steering Parameter",
      "description": "Create a Steering Parameter",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "A steering parameter is used to mark tunnels and guide tunnel selection: {\"data\": {\"name\": {\"string\": \"string\"}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "object",
                    "properties": {
                      "string": {
                        "type": "string"
                      }
                    },
                    "title": "UrlSafeString"
                  }
                },
                "title": "SteeringParameter",
                "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
              }
            },
            "title": "Request«SteeringParameter»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "object",
                      "properties": {
                        "string": {
                          "type": "string"
                        }
                      },
                      "title": "UrlSafeString"
                    }
                  },
                  "title": "SteeringParameter",
                  "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«SteeringParameter»"
            }
          },
          "title": "ResponseData«SteeringParameter»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSteeringParameter"
      },
      "task": true
    },
    {
      "name": "deleteSteeringParameter",
      "summary": "Delete a Steering Parameter",
      "description": "Delete a Steering Parameter",
      "input": [
        {
          "name": "steeringParameterName",
          "type": "string",
          "info": "The name of the Steering Parameter to be deleted: string",
          "required": true,
          "schema": {
            "title": "steeringParameterName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSteeringParameter"
      },
      "task": true
    },
    {
      "name": "getSteeringParameters",
      "summary": "Query all Steering Paramters",
      "description": "Query all Steering Paramters",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "name": {
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "title": "UrlSafeString"
                      }
                    },
                    "title": "SteeringParameter",
                    "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«SteeringParameter»»"
            }
          },
          "title": "ResponseData«List«SteeringParameter»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getSteeringParameters"
      },
      "task": true
    },
    {
      "name": "getAllTunnelSelections",
      "summary": "Query all tunnel selection policies.",
      "description": "Query all tunnel selection policies.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bgpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating BGP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude BGP tunnels from selection, [-1..13]"
                      },
                      "canBookBwInCoreForEline": {
                        "type": "boolean",
                        "description": "Specifies whether or not bandwidth is booked in the core for ELINE service type"
                      },
                      "canCreateNewTunnel": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy can create new tunnel"
                      },
                      "canRebindTunnel": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy can rebind tunnel"
                      },
                      "canResizeExistingTunnel": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy can resize an existing tunnel"
                      },
                      "canUseExistingTunnel": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy can use an existing tunnel"
                      },
                      "consumable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel created with consumable enabled"
                      },
                      "deletable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel created with deletable enabled"
                      },
                      "erpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting ERPs. A lower value indicates a higher priority. A value of -1 indicates to exclude ERPs from selection, [-1..13]"
                      },
                      "frrEnabled": {
                        "type": "boolean",
                        "description": "Specifies whether or not to enable FRR when creating the LSP. Currently, true is the only supported value"
                      },
                      "grePriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating GRE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude GRE tunnels from selection, [-1..13]"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "igpConnectivityRequiredDuringPathSelection": {
                        "type": "boolean",
                        "description": "Specifies whether or not IGP connectivity is required during path selection"
                      },
                      "ldpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating LDP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude LDP tunnels from selection, [-1..13]"
                      },
                      "looseRsvpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting loose RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose RSVP tunnels from selection, [-1..13]"
                      },
                      "looseSrTePriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting loose SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose SR-TE tunnels from selection, [-1..13]"
                      },
                      "modifiable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel is created with modifiable enabled"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "oduPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting ODU tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude ODU tunnels from selection, [-1..13]"
                      },
                      "pccInitiatedLspEnabled": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy can create PCC initiated tunnel. Deprecated: Use pcc-initiated-rsvp-priority instead"
                      },
                      "pccInitiatedRsvpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating PCC initiated RSVP tunnels. A lower value indicates a nhigher priority. A value of -1 indicates to exclude PCC initiated RSVP tunnels from selection, [-1..13]"
                      },
                      "pccInitiatedSrTePriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting PCC initiated SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude PCC initiated SR-TE tunnels from selection, [-1..13]"
                      },
                      "protection": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel has a protection path. Only applicable when creating a new LSP"
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Secondary is used when the protection path is not pre-signalled. Standby is used when the protection path is re-signalled. Primary is used when protection is disabled. Only applicable when creating a new LSP",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      },
                      "shouldAvoidOperStateDown": {
                        "type": "boolean",
                        "description": "Specifies whether or not the policy should avoid resource which their operational state is down"
                      },
                      "srIsisPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating strict SR-ISIS tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-ISIS tunnels from selection, [-1..13]"
                      },
                      "srOspfPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating strict SR-OSPF tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-OSPF tunnels from selection, [-1..13]"
                      },
                      "steeringParametersExcluded": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "name"
                          ],
                          "properties": {
                            "name": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "UrlSafeString"
                            }
                          },
                          "title": "SteeringParameter",
                          "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                        }
                      },
                      "steeringParametersIncluded": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "name"
                          ],
                          "properties": {
                            "name": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "UrlSafeString"
                            }
                          },
                          "title": "SteeringParameter",
                          "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                        }
                      },
                      "strictRsvpPriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting/creating strict RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict RSVP tunnels from selection, [-1..13]"
                      },
                      "strictSrTePriority": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the priority for selecting strict SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-TE tunnels from selection, [-1..13]"
                      },
                      "targetIpAddressInfoList": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "associatedTunnelType": {
                              "type": "string",
                              "description": "Tunnel type associated with the termination IP address.",
                              "enum": [
                                "sr_pcc_initiated",
                                "sr_isis",
                                "sr_te_strict",
                                "pcc_initiated",
                                "sr_te_loose",
                                "rsvp_strict",
                                "ldp",
                                "rsvp_loose",
                                "bgp",
                                "sr_ospf",
                                "gre"
                              ]
                            },
                            "primaryAddress": {
                              "type": "object",
                              "properties": {
                                "ipv4Prefix": {
                                  "type": "object",
                                  "description": ""
                                },
                                "ipv6Prefix": {
                                  "type": "object",
                                  "description": ""
                                }
                              },
                              "title": "IpPrefix",
                              "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                            }
                          },
                          "title": "TargetIpAddressInfo"
                        }
                      }
                    },
                    "title": "TunnelSelectionTemplate",
                    "description": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«TunnelSelectionTemplate»»"
            }
          },
          "title": "ResponseData«List«TunnelSelectionTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllTunnelSelections"
      },
      "task": true
    },
    {
      "name": "createTunnelSelections",
      "summary": "Create a tunnel selection policy.",
      "description": "Create a tunnel selection policy.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network.: {\"data\": {\"appId\": \"string\", \"bgpPriority\": 123, \"canBookBwInCoreForEline\": \"boolean\", \"canCreateNewTunnel\": \"boolean\", \"canRebindTunnel\": \"boolean\", \"canResizeExistingTunnel\": \"boolean\", \"canUseExistingTunnel\": \"boolean\", \"consumable\": \"boolean\", \"deletable\": \"boolean\", \"erpPriority\": 123, \"frrEnabled\": \"boolean\", \"grePriority\": 123, \"id\": \"string\", \"igpConnectivityRequiredDuringPathSelection\": \"boolean\", \"ldpPriority\": 123, \"looseRsvpPriority\": 123, \"looseSrTePriority\": 123, \"modifiable\": \"boolean\", \"name\": \"string\", \"objectDescription\": \"string\", \"oduPriority\": 123, \"pccInitiatedLspEnabled\": \"boolean\", \"pccInitiatedRsvpPriority\": 123, \"pccInitiatedSrTePriority\": 123, \"protection\": \"boolean\", \"protectionType\": \"Must be one of [SECONDARY, STANDBY, PRIMARY, UNKNOWN]\", \"shouldAvoidOperStateDown\": \"boolean\", \"srIsisPriority\": 123, \"srOspfPriority\": 123, \"steeringParametersExcluded\": [{\"name\": {\"string\": \"string\"}}], \"steeringParametersIncluded\": [{\"name\": {\"string\": \"string\"}}], \"strictRsvpPriority\": 123, \"strictSrTePriority\": 123, \"targetIpAddressInfoList\": [{\"associatedTunnelType\": \"Must be one of [sr_pcc_initiated, sr_isis, sr_te_strict, pcc_initiated, sr_te_loose, rsvp_strict, ldp, rsvp_loose, bgp, sr_ospf, gre]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bgpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating BGP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude BGP tunnels from selection, [-1..13]"
                  },
                  "canBookBwInCoreForEline": {
                    "type": "boolean",
                    "description": "Specifies whether or not bandwidth is booked in the core for ELINE service type"
                  },
                  "canCreateNewTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can create new tunnel"
                  },
                  "canRebindTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can rebind tunnel"
                  },
                  "canResizeExistingTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can resize an existing tunnel"
                  },
                  "canUseExistingTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can use an existing tunnel"
                  },
                  "consumable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel created with consumable enabled"
                  },
                  "deletable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel created with deletable enabled"
                  },
                  "erpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting ERPs. A lower value indicates a higher priority. A value of -1 indicates to exclude ERPs from selection, [-1..13]"
                  },
                  "frrEnabled": {
                    "type": "boolean",
                    "description": "Specifies whether or not to enable FRR when creating the LSP. Currently, true is the only supported value"
                  },
                  "grePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating GRE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude GRE tunnels from selection, [-1..13]"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "igpConnectivityRequiredDuringPathSelection": {
                    "type": "boolean",
                    "description": "Specifies whether or not IGP connectivity is required during path selection"
                  },
                  "ldpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating LDP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude LDP tunnels from selection, [-1..13]"
                  },
                  "looseRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting loose RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose RSVP tunnels from selection, [-1..13]"
                  },
                  "looseSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting loose SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose SR-TE tunnels from selection, [-1..13]"
                  },
                  "modifiable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel is created with modifiable enabled"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "oduPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting ODU tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude ODU tunnels from selection, [-1..13]"
                  },
                  "pccInitiatedLspEnabled": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can create PCC initiated tunnel. Deprecated: Use pcc-initiated-rsvp-priority instead"
                  },
                  "pccInitiatedRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating PCC initiated RSVP tunnels. A lower value indicates a nhigher priority. A value of -1 indicates to exclude PCC initiated RSVP tunnels from selection, [-1..13]"
                  },
                  "pccInitiatedSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting PCC initiated SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude PCC initiated SR-TE tunnels from selection, [-1..13]"
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel has a protection path. Only applicable when creating a new LSP"
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Secondary is used when the protection path is not pre-signalled. Standby is used when the protection path is re-signalled. Primary is used when protection is disabled. Only applicable when creating a new LSP",
                    "enum": [
                      "SECONDARY",
                      "STANDBY",
                      "PRIMARY",
                      "UNKNOWN"
                    ]
                  },
                  "shouldAvoidOperStateDown": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy should avoid resource which their operational state is down"
                  },
                  "srIsisPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict SR-ISIS tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-ISIS tunnels from selection, [-1..13]"
                  },
                  "srOspfPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict SR-OSPF tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-OSPF tunnels from selection, [-1..13]"
                  },
                  "steeringParametersExcluded": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "UrlSafeString"
                        }
                      },
                      "title": "SteeringParameter",
                      "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                    }
                  },
                  "steeringParametersIncluded": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "UrlSafeString"
                        }
                      },
                      "title": "SteeringParameter",
                      "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                    }
                  },
                  "strictRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict RSVP tunnels from selection, [-1..13]"
                  },
                  "strictSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting strict SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-TE tunnels from selection, [-1..13]"
                  },
                  "targetIpAddressInfoList": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "associatedTunnelType": {
                          "type": "string",
                          "description": "Tunnel type associated with the termination IP address.",
                          "enum": [
                            "sr_pcc_initiated",
                            "sr_isis",
                            "sr_te_strict",
                            "pcc_initiated",
                            "sr_te_loose",
                            "rsvp_strict",
                            "ldp",
                            "rsvp_loose",
                            "bgp",
                            "sr_ospf",
                            "gre"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        }
                      },
                      "title": "TargetIpAddressInfo"
                    }
                  }
                },
                "title": "TunnelSelectionTemplate",
                "description": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network."
              }
            },
            "title": "Request«TunnelSelectionTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bgpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating BGP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude BGP tunnels from selection, [-1..13]"
                    },
                    "canBookBwInCoreForEline": {
                      "type": "boolean",
                      "description": "Specifies whether or not bandwidth is booked in the core for ELINE service type"
                    },
                    "canCreateNewTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can create new tunnel"
                    },
                    "canRebindTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can rebind tunnel"
                    },
                    "canResizeExistingTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can resize an existing tunnel"
                    },
                    "canUseExistingTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can use an existing tunnel"
                    },
                    "consumable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel created with consumable enabled"
                    },
                    "deletable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel created with deletable enabled"
                    },
                    "erpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting ERPs. A lower value indicates a higher priority. A value of -1 indicates to exclude ERPs from selection, [-1..13]"
                    },
                    "frrEnabled": {
                      "type": "boolean",
                      "description": "Specifies whether or not to enable FRR when creating the LSP. Currently, true is the only supported value"
                    },
                    "grePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating GRE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude GRE tunnels from selection, [-1..13]"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "igpConnectivityRequiredDuringPathSelection": {
                      "type": "boolean",
                      "description": "Specifies whether or not IGP connectivity is required during path selection"
                    },
                    "ldpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating LDP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude LDP tunnels from selection, [-1..13]"
                    },
                    "looseRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting loose RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose RSVP tunnels from selection, [-1..13]"
                    },
                    "looseSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting loose SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose SR-TE tunnels from selection, [-1..13]"
                    },
                    "modifiable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel is created with modifiable enabled"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "oduPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting ODU tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude ODU tunnels from selection, [-1..13]"
                    },
                    "pccInitiatedLspEnabled": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can create PCC initiated tunnel. Deprecated: Use pcc-initiated-rsvp-priority instead"
                    },
                    "pccInitiatedRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating PCC initiated RSVP tunnels. A lower value indicates a nhigher priority. A value of -1 indicates to exclude PCC initiated RSVP tunnels from selection, [-1..13]"
                    },
                    "pccInitiatedSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting PCC initiated SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude PCC initiated SR-TE tunnels from selection, [-1..13]"
                    },
                    "protection": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel has a protection path. Only applicable when creating a new LSP"
                    },
                    "protectionType": {
                      "type": "string",
                      "description": "Secondary is used when the protection path is not pre-signalled. Standby is used when the protection path is re-signalled. Primary is used when protection is disabled. Only applicable when creating a new LSP",
                      "enum": [
                        "SECONDARY",
                        "STANDBY",
                        "PRIMARY",
                        "UNKNOWN"
                      ]
                    },
                    "shouldAvoidOperStateDown": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy should avoid resource which their operational state is down"
                    },
                    "srIsisPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict SR-ISIS tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-ISIS tunnels from selection, [-1..13]"
                    },
                    "srOspfPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict SR-OSPF tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-OSPF tunnels from selection, [-1..13]"
                    },
                    "steeringParametersExcluded": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "UrlSafeString"
                          }
                        },
                        "title": "SteeringParameter",
                        "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                      }
                    },
                    "steeringParametersIncluded": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "UrlSafeString"
                          }
                        },
                        "title": "SteeringParameter",
                        "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                      }
                    },
                    "strictRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict RSVP tunnels from selection, [-1..13]"
                    },
                    "strictSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting strict SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-TE tunnels from selection, [-1..13]"
                    },
                    "targetIpAddressInfoList": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "associatedTunnelType": {
                            "type": "string",
                            "description": "Tunnel type associated with the termination IP address.",
                            "enum": [
                              "sr_pcc_initiated",
                              "sr_isis",
                              "sr_te_strict",
                              "pcc_initiated",
                              "sr_te_loose",
                              "rsvp_strict",
                              "ldp",
                              "rsvp_loose",
                              "bgp",
                              "sr_ospf",
                              "gre"
                            ]
                          },
                          "primaryAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "title": "TargetIpAddressInfo"
                      }
                    }
                  },
                  "title": "TunnelSelectionTemplate",
                  "description": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TunnelSelectionTemplate»"
            }
          },
          "title": "ResponseData«TunnelSelectionTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createTunnelSelections"
      },
      "task": true
    },
    {
      "name": "getTunnelSelections",
      "summary": "Query a tunnel selections policy by its unique identifier.",
      "description": "Query a tunnel selections policy by its unique identifier.",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "policyId: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bgpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating BGP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude BGP tunnels from selection, [-1..13]"
                    },
                    "canBookBwInCoreForEline": {
                      "type": "boolean",
                      "description": "Specifies whether or not bandwidth is booked in the core for ELINE service type"
                    },
                    "canCreateNewTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can create new tunnel"
                    },
                    "canRebindTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can rebind tunnel"
                    },
                    "canResizeExistingTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can resize an existing tunnel"
                    },
                    "canUseExistingTunnel": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can use an existing tunnel"
                    },
                    "consumable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel created with consumable enabled"
                    },
                    "deletable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel created with deletable enabled"
                    },
                    "erpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting ERPs. A lower value indicates a higher priority. A value of -1 indicates to exclude ERPs from selection, [-1..13]"
                    },
                    "frrEnabled": {
                      "type": "boolean",
                      "description": "Specifies whether or not to enable FRR when creating the LSP. Currently, true is the only supported value"
                    },
                    "grePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating GRE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude GRE tunnels from selection, [-1..13]"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "igpConnectivityRequiredDuringPathSelection": {
                      "type": "boolean",
                      "description": "Specifies whether or not IGP connectivity is required during path selection"
                    },
                    "ldpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating LDP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude LDP tunnels from selection, [-1..13]"
                    },
                    "looseRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting loose RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose RSVP tunnels from selection, [-1..13]"
                    },
                    "looseSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting loose SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose SR-TE tunnels from selection, [-1..13]"
                    },
                    "modifiable": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel is created with modifiable enabled"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "oduPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting ODU tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude ODU tunnels from selection, [-1..13]"
                    },
                    "pccInitiatedLspEnabled": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy can create PCC initiated tunnel. Deprecated: Use pcc-initiated-rsvp-priority instead"
                    },
                    "pccInitiatedRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating PCC initiated RSVP tunnels. A lower value indicates a nhigher priority. A value of -1 indicates to exclude PCC initiated RSVP tunnels from selection, [-1..13]"
                    },
                    "pccInitiatedSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting PCC initiated SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude PCC initiated SR-TE tunnels from selection, [-1..13]"
                    },
                    "protection": {
                      "type": "boolean",
                      "description": "Specifies whether or not the tunnel has a protection path. Only applicable when creating a new LSP"
                    },
                    "protectionType": {
                      "type": "string",
                      "description": "Secondary is used when the protection path is not pre-signalled. Standby is used when the protection path is re-signalled. Primary is used when protection is disabled. Only applicable when creating a new LSP",
                      "enum": [
                        "SECONDARY",
                        "STANDBY",
                        "PRIMARY",
                        "UNKNOWN"
                      ]
                    },
                    "shouldAvoidOperStateDown": {
                      "type": "boolean",
                      "description": "Specifies whether or not the policy should avoid resource which their operational state is down"
                    },
                    "srIsisPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict SR-ISIS tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-ISIS tunnels from selection, [-1..13]"
                    },
                    "srOspfPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict SR-OSPF tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-OSPF tunnels from selection, [-1..13]"
                    },
                    "steeringParametersExcluded": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "UrlSafeString"
                          }
                        },
                        "title": "SteeringParameter",
                        "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                      }
                    },
                    "steeringParametersIncluded": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "UrlSafeString"
                          }
                        },
                        "title": "SteeringParameter",
                        "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                      }
                    },
                    "strictRsvpPriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting/creating strict RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict RSVP tunnels from selection, [-1..13]"
                    },
                    "strictSrTePriority": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Specifies the priority for selecting strict SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-TE tunnels from selection, [-1..13]"
                    },
                    "targetIpAddressInfoList": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "associatedTunnelType": {
                            "type": "string",
                            "description": "Tunnel type associated with the termination IP address.",
                            "enum": [
                              "sr_pcc_initiated",
                              "sr_isis",
                              "sr_te_strict",
                              "pcc_initiated",
                              "sr_te_loose",
                              "rsvp_strict",
                              "ldp",
                              "rsvp_loose",
                              "bgp",
                              "sr_ospf",
                              "gre"
                            ]
                          },
                          "primaryAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Prefix": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Prefix": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpPrefix",
                            "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                          }
                        },
                        "title": "TargetIpAddressInfo"
                      }
                    }
                  },
                  "title": "TunnelSelectionTemplate",
                  "description": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«TunnelSelectionTemplate»"
            }
          },
          "title": "ResponseData«TunnelSelectionTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTunnelSelections"
      },
      "task": true
    },
    {
      "name": "updateTunnelSelections",
      "summary": "Update a tunnel selection policy.",
      "description": "Update a tunnel selection policy.",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network.: {\"data\": {\"appId\": \"string\", \"bgpPriority\": 123, \"canBookBwInCoreForEline\": \"boolean\", \"canCreateNewTunnel\": \"boolean\", \"canRebindTunnel\": \"boolean\", \"canResizeExistingTunnel\": \"boolean\", \"canUseExistingTunnel\": \"boolean\", \"consumable\": \"boolean\", \"deletable\": \"boolean\", \"erpPriority\": 123, \"frrEnabled\": \"boolean\", \"grePriority\": 123, \"id\": \"string\", \"igpConnectivityRequiredDuringPathSelection\": \"boolean\", \"ldpPriority\": 123, \"looseRsvpPriority\": 123, \"looseSrTePriority\": 123, \"modifiable\": \"boolean\", \"name\": \"string\", \"objectDescription\": \"string\", \"oduPriority\": 123, \"pccInitiatedLspEnabled\": \"boolean\", \"pccInitiatedRsvpPriority\": 123, \"pccInitiatedSrTePriority\": 123, \"protection\": \"boolean\", \"protectionType\": \"Must be one of [SECONDARY, STANDBY, PRIMARY, UNKNOWN]\", \"shouldAvoidOperStateDown\": \"boolean\", \"srIsisPriority\": 123, \"srOspfPriority\": 123, \"steeringParametersExcluded\": [{\"name\": {\"string\": \"string\"}}], \"steeringParametersIncluded\": [{\"name\": {\"string\": \"string\"}}], \"strictRsvpPriority\": 123, \"strictSrTePriority\": 123, \"targetIpAddressInfoList\": [{\"associatedTunnelType\": \"Must be one of [sr_pcc_initiated, sr_isis, sr_te_strict, pcc_initiated, sr_te_loose, rsvp_strict, ldp, rsvp_loose, bgp, sr_ospf, gre]\", \"primaryAddress\": {\"ipv4Prefix\": \"object\", \"ipv6Prefix\": \"object\"}}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bgpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating BGP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude BGP tunnels from selection, [-1..13]"
                  },
                  "canBookBwInCoreForEline": {
                    "type": "boolean",
                    "description": "Specifies whether or not bandwidth is booked in the core for ELINE service type"
                  },
                  "canCreateNewTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can create new tunnel"
                  },
                  "canRebindTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can rebind tunnel"
                  },
                  "canResizeExistingTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can resize an existing tunnel"
                  },
                  "canUseExistingTunnel": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can use an existing tunnel"
                  },
                  "consumable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel created with consumable enabled"
                  },
                  "deletable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel created with deletable enabled"
                  },
                  "erpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting ERPs. A lower value indicates a higher priority. A value of -1 indicates to exclude ERPs from selection, [-1..13]"
                  },
                  "frrEnabled": {
                    "type": "boolean",
                    "description": "Specifies whether or not to enable FRR when creating the LSP. Currently, true is the only supported value"
                  },
                  "grePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating GRE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude GRE tunnels from selection, [-1..13]"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "igpConnectivityRequiredDuringPathSelection": {
                    "type": "boolean",
                    "description": "Specifies whether or not IGP connectivity is required during path selection"
                  },
                  "ldpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating LDP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude LDP tunnels from selection, [-1..13]"
                  },
                  "looseRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting loose RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose RSVP tunnels from selection, [-1..13]"
                  },
                  "looseSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting loose SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude loose SR-TE tunnels from selection, [-1..13]"
                  },
                  "modifiable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel is created with modifiable enabled"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "oduPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting ODU tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude ODU tunnels from selection, [-1..13]"
                  },
                  "pccInitiatedLspEnabled": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy can create PCC initiated tunnel. Deprecated: Use pcc-initiated-rsvp-priority instead"
                  },
                  "pccInitiatedRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating PCC initiated RSVP tunnels. A lower value indicates a nhigher priority. A value of -1 indicates to exclude PCC initiated RSVP tunnels from selection, [-1..13]"
                  },
                  "pccInitiatedSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting PCC initiated SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude PCC initiated SR-TE tunnels from selection, [-1..13]"
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel has a protection path. Only applicable when creating a new LSP"
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Secondary is used when the protection path is not pre-signalled. Standby is used when the protection path is re-signalled. Primary is used when protection is disabled. Only applicable when creating a new LSP",
                    "enum": [
                      "SECONDARY",
                      "STANDBY",
                      "PRIMARY",
                      "UNKNOWN"
                    ]
                  },
                  "shouldAvoidOperStateDown": {
                    "type": "boolean",
                    "description": "Specifies whether or not the policy should avoid resource which their operational state is down"
                  },
                  "srIsisPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict SR-ISIS tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-ISIS tunnels from selection, [-1..13]"
                  },
                  "srOspfPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict SR-OSPF tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-OSPF tunnels from selection, [-1..13]"
                  },
                  "steeringParametersExcluded": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "UrlSafeString"
                        }
                      },
                      "title": "SteeringParameter",
                      "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                    }
                  },
                  "steeringParametersIncluded": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "UrlSafeString"
                        }
                      },
                      "title": "SteeringParameter",
                      "description": "A steering parameter is used to mark tunnels and guide tunnel selection"
                    }
                  },
                  "strictRsvpPriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting/creating strict RSVP tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict RSVP tunnels from selection, [-1..13]"
                  },
                  "strictSrTePriority": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Specifies the priority for selecting strict SR-TE tunnels. A lower value indicates a higher priority. A value of -1 indicates to exclude strict SR-TE tunnels from selection, [-1..13]"
                  },
                  "targetIpAddressInfoList": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "associatedTunnelType": {
                          "type": "string",
                          "description": "Tunnel type associated with the termination IP address.",
                          "enum": [
                            "sr_pcc_initiated",
                            "sr_isis",
                            "sr_te_strict",
                            "pcc_initiated",
                            "sr_te_loose",
                            "rsvp_strict",
                            "ldp",
                            "rsvp_loose",
                            "bgp",
                            "sr_ospf",
                            "gre"
                          ]
                        },
                        "primaryAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Prefix": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Prefix": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpPrefix",
                          "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                        }
                      },
                      "title": "TargetIpAddressInfo"
                    }
                  }
                },
                "title": "TunnelSelectionTemplate",
                "description": "The tunnel selection template controls system behaviour when selecting/creating tunnels in the network."
              }
            },
            "title": "Request«TunnelSelectionTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTunnelSelections"
      },
      "task": true
    },
    {
      "name": "deleteTunnelSelections",
      "summary": "Delete an existing tunnel selections policy.",
      "description": "Delete an existing tunnel selections policy.",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "policyId: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteTunnelSelections"
      },
      "task": true
    },
    {
      "name": "getV4Ports",
      "summary": "Find all ports in the network",
      "description": "Find all ports in the network",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4Ports"
      },
      "task": true
    },
    {
      "name": "getNeAllByTenant",
      "summary": "getNeAllByTenant",
      "description": "getNeAllByTenant",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNeAllByTenant"
      },
      "task": true
    },
    {
      "name": "getNeAll",
      "summary": "Query all ports of the provided network element",
      "description": "Query all ports of the provided network element",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNeAll"
      },
      "task": true
    },
    {
      "name": "getNeByTenant",
      "summary": "getNeByTenant",
      "description": "getNeByTenant",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        },
        {
          "name": "serviceType",
          "type": "string",
          "info": "The service type for the port to be queried: Must be one of [ODU, TUNNEL, EACCESS, L2_EXTENSION_UNI, CLINE, L2_EXTENSION_NNI, L2_BACKHAUL, L2_DCI, PHYSICAL_LINK, LAG, ELAN, OCH, ELINE, IES, L3_VPN, L3_DCI]",
          "required": true,
          "schema": {
            "title": "serviceType",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNeByTenant"
      },
      "task": true
    },
    {
      "name": "getNe",
      "summary": "Query all ports of the provided network element of a service type",
      "description": "Query all ports of the provided network element of a service type",
      "input": [
        {
          "name": "neUuid",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceType",
          "type": "string",
          "info": "The service type for the port to be queried: Must be one of [ODU, TUNNEL, EACCESS, L2_EXTENSION_UNI, CLINE, L2_EXTENSION_NNI, L2_BACKHAUL, L2_DCI, PHYSICAL_LINK, LAG, ELAN, OCH, ELINE, IES, L3_VPN, L3_DCI]",
          "required": true,
          "schema": {
            "title": "serviceType",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNe"
      },
      "task": true
    },
    {
      "name": "getServiceCountOnPort",
      "summary": "Find number of services on a specified port",
      "description": "Find number of services on a specified port",
      "input": [
        {
          "name": "portUuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "portUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "integer",
                  "format": "int64"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«long»"
            }
          },
          "title": "ResponseData«long»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServiceCountOnPort"
      },
      "task": true
    },
    {
      "name": "getServicesOnPort",
      "summary": "Query all services using a port",
      "description": "Query all services using a port",
      "input": [
        {
          "name": "portUuid",
          "type": "string",
          "info": "The unique identifier of the port to be queried: string",
          "required": true,
          "schema": {
            "title": "portUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "bidirectional",
                      "objective"
                    ],
                    "properties": {
                      "actualEndState": {
                        "type": "string",
                        "description": "Reflects the actual end state for this object, generally Saved, Deployed, etc. This is a read-only attribute.",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so, what type of return path will be used. Unsupported for L3 VPN Services",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bw": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the service. Unsupported for IP Services. Supported values for optical services can be 1244160(1Gbe:ODU0), 2666057(OTU1:ODU1), 9953280(10GbE:ODU2), 10312500(10GbE:ODU2E), 10709000(OTU2:ODU2), 11096000(OTU2:ODU2E), 39813120(40GbE:ODU3), 43108000(OTU3:ODU3), 44583000(OTU3:ODU3e2), 100000000(100GbE:ODU4) and 112000000(OTU4:ODU4), 155520(STM-1:ODU0), 622080(STM-4:ODU0), 2488320(STM-16:ODU1), 9953281(STM-64:ODU2), 39813121(STM-256:ODU3), 1062600 (FC100:ODU0), 2125000 (FC200:ODU1), 4250000 (FC400:ODUflex)"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the service."
                      },
                      "endpointExtensions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "connectedInner": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag of connected port"
                            },
                            "connectedOuter": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag of connected port"
                            },
                            "connectedPortId": {
                              "type": "string",
                              "description": "The uuid of the connected port"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "nniPort": {
                              "type": "object",
                              "description": "The nni-port attributes"
                            },
                            "uniPort": {
                              "type": "object",
                              "description": "The uni-port attributes"
                            }
                          },
                          "title": "L2EndPointExtension",
                          "description": "The L2 endpoint extension definition"
                        }
                      },
                      "endpoints": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "actualEndState": {
                              "type": "string",
                              "description": "The current end state of this endpoint (whether it is Saved, Deployed, etc)",
                              "enum": [
                                "Saved",
                                "Deployed"
                              ]
                            },
                            "adminState": {
                              "type": "string",
                              "description": "The current administrative state of the entity",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "appId": {
                              "type": "string",
                              "description": "The client-defined, custom Application ID for the entity"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "customAttributesTemplateId": {
                              "type": "string",
                              "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                            },
                            "description": {
                              "type": "string",
                              "description": "A textual description of the service."
                            },
                            "externalIds": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "id": {
                              "type": "string",
                              "description": "The unique identifier of the entity"
                            },
                            "name": {
                              "type": "string",
                              "description": "The name of the service endpoint"
                            },
                            "neDeploymentState": {
                              "type": "string",
                              "description": "The current deployment state of the entity",
                              "enum": [
                                "DEPLOYED",
                                "NA",
                                "FAILED",
                                "UNKNOWN",
                                "PENDING"
                              ]
                            },
                            "neId": {
                              "type": "string",
                              "description": "The identifier of the network element where the service endpoint resides"
                            },
                            "neName": {
                              "type": "string",
                              "description": "The name of the network element to which this endpoint belongs"
                            },
                            "operationalState": {
                              "type": "string",
                              "description": "The current operational state of the entity",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portAdminState": {
                              "type": "string",
                              "description": "The administrative state of port used by endpoint",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ]
                            },
                            "portId": {
                              "type": "string",
                              "description": "The identifier of the port upon which the service endpoint resides"
                            },
                            "portName": {
                              "type": "string",
                              "description": "The name of the port upon which the service endpoint resides"
                            },
                            "portOperationalState": {
                              "type": "string",
                              "description": "The operational state of port used by endpoint",
                              "enum": [
                                "PARTIALLY_DOWN",
                                "TRANSITION",
                                "DOWN",
                                "DEGRADED",
                                "UNKNOWN",
                                "UP"
                              ]
                            },
                            "portSpeed": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The bandwidth of port used by endpoint"
                            },
                            "serviceId": {
                              "type": "string",
                              "description": "The identifier of the service that uses this endpoint"
                            }
                          },
                          "title": "BaseServiceEndpoint",
                          "description": "The service endpoint definition. The service endpoint is a port which is terminated against a service."
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "groupId": {
                        "type": "string",
                        "description": "Specifies the identifier of the group to which this service should belong. This only applies to optical services"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "lifeCycle": {
                        "type": "object",
                        "properties": {
                          "phase": {
                            "type": "string",
                            "description": "The phase of the life cycle object",
                            "enum": [
                              "Creation",
                              "Deployment",
                              "Activation",
                              "Planning"
                            ]
                          },
                          "reason": {
                            "type": "string",
                            "description": "The reason for the current phase/state of the life cycle object"
                          },
                          "state": {
                            "type": "string",
                            "description": "The state of the life cycle object",
                            "enum": [
                              "Delete",
                              "PartiallyDeployed",
                              "Deploying",
                              "Undeployed",
                              "Routing",
                              "Planned",
                              "Deployed",
                              "DeploymentFailed",
                              "WaitingForDeployment",
                              "RoutedAndSaved",
                              "RoutingFailed",
                              "Saved",
                              "Undeploy"
                            ]
                          }
                        },
                        "title": "LifeCycle",
                        "description": "The Life Cycle details for a given object."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum cost to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Specifies the maximum number of hops to consider for the service. Unsupported for L3 VPN Services"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in ms) to consider for the service."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the service"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "nodeServiceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the node identifier of the service. Populated only when same node service identifier is used across all sites. "
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Unsupported for L3 VPN Services",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "pathProfileId": {
                        "type": "string",
                        "description": "Specifies the identifier of the path profile to apply to the service. This only applies to optical services"
                      },
                      "requestedEndState": {
                        "type": "string",
                        "description": "Specifies the desired end state for this request, generally Saved, Deployed, etc",
                        "enum": [
                          "Saved",
                          "Deployed"
                        ]
                      },
                      "reverseBW": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for the returning path of the service. Unsupported for IP Services"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "The type of the service",
                        "enum": [
                          "ODU",
                          "TUNNEL",
                          "EACCESS",
                          "L2_EXTENSION_UNI",
                          "CLINE",
                          "L2_EXTENSION_NNI",
                          "L2_BACKHAUL",
                          "L2_DCI",
                          "PHYSICAL_LINK",
                          "LAG",
                          "ELAN",
                          "OCH",
                          "ELINE",
                          "IES",
                          "L3_VPN",
                          "L3_DCI"
                        ]
                      },
                      "templateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the template to apply to the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "Specifies the identifier of the tunnel selection profile to apply to the service."
                      }
                    },
                    "title": "BaseService",
                    "description": "This object is a read only representation of a service"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseService»»"
            }
          },
          "title": "ResponseData«List«BaseService»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicesOnPort"
      },
      "task": true
    },
    {
      "name": "getServicetype",
      "summary": "Find all ports in the network that support a given service type",
      "description": "Find all ports in the network that support a given service type",
      "input": [
        {
          "name": "serviceType",
          "type": "string",
          "info": "The service type for the port to be queried: Must be one of [ODU, TUNNEL, EACCESS, L2_EXTENSION_UNI, CLINE, L2_EXTENSION_NNI, L2_BACKHAUL, L2_DCI, PHYSICAL_LINK, LAG, ELAN, OCH, ELINE, IES, L3_VPN, L3_DCI]",
          "required": true,
          "schema": {
            "title": "serviceType",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicetype"
      },
      "task": true
    },
    {
      "name": "getServicetypeByTenant",
      "summary": "getServicetypeByTenant",
      "description": "getServicetypeByTenant",
      "input": [
        {
          "name": "serviceType",
          "type": "string",
          "info": "The service type for the port to be queried: Must be one of [ODU, TUNNEL, EACCESS, L2_EXTENSION_UNI, CLINE, L2_EXTENSION_NNI, L2_BACKHAUL, L2_DCI, PHYSICAL_LINK, LAG, ELAN, OCH, ELINE, IES, L3_VPN, L3_DCI]",
          "required": true,
          "schema": {
            "title": "serviceType",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicetypeByTenant"
      },
      "task": true
    },
    {
      "name": "getTenant",
      "summary": "getTenant",
      "description": "getTenant",
      "input": [
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be queried: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "availableEgressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available egress bandwidth associated with a port"
                      },
                      "availableIngressBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the available ingress bandwidth associated with a port"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "dc": {
                        "type": "object",
                        "properties": {
                          "l3DomainTemplates": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          }
                        },
                        "title": "Dc",
                        "description": "Contains DC related configuration"
                      },
                      "description": {
                        "type": "string",
                        "description": "A textual description of the port."
                      },
                      "ethernet": {
                        "type": "object",
                        "properties": {
                          "encapType": {
                            "type": "string",
                            "description": "The encapsulation type of the ethernet port",
                            "enum": [
                              "Null",
                              "Unknown",
                              "Dot1Q",
                              "QinQ"
                            ]
                          },
                          "lag": {
                            "type": "object",
                            "description": "Contains LAG related configuration"
                          },
                          "lldpConfiguration": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "lldpRemotePeers": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "portMode": {
                            "type": "string",
                            "description": "The port-mode type of the ethernet port",
                            "enum": [
                              "NETWORK",
                              "UNDEFINED",
                              "ACCESS",
                              "HYBRID"
                            ]
                          }
                        },
                        "title": "Ethernet",
                        "description": "Contains all Ethernet interface related configuration"
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "interfaceId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The id of the port/interface"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the port"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "neId": {
                        "type": "string",
                        "description": "The router entity where the port resides"
                      },
                      "neName": {
                        "type": "string",
                        "description": "The name of the network equipment to which this endpoint belongs"
                      },
                      "nspDbFdn": {
                        "type": "string",
                        "description": "FDN of the port in the NSP DB"
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      },
                      "optics": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Specifies the protection type of the port",
                            "enum": [
                              "working",
                              "protection"
                            ]
                          }
                        },
                        "title": "Optics",
                        "description": "Contains Optical related configuration"
                      },
                      "portCapability": {
                        "type": "object",
                        "properties": {
                          "cline": {
                            "type": "boolean"
                          },
                          "elan": {
                            "type": "boolean"
                          },
                          "eline": {
                            "type": "boolean"
                          },
                          "ies": {
                            "type": "boolean"
                          },
                          "l2ExtensionNni": {
                            "type": "boolean"
                          },
                          "l2ExtensionUni": {
                            "type": "boolean"
                          },
                          "l2backhaul": {
                            "type": "boolean"
                          },
                          "l2dci": {
                            "type": "boolean"
                          },
                          "l3dci": {
                            "type": "boolean"
                          },
                          "l3vpn": {
                            "type": "boolean"
                          },
                          "lag": {
                            "type": "boolean"
                          },
                          "och": {
                            "type": "boolean"
                          },
                          "odu": {
                            "type": "boolean"
                          },
                          "opsa": {
                            "type": "boolean"
                          },
                          "opsb": {
                            "type": "boolean"
                          },
                          "physicalLink": {
                            "type": "boolean"
                          },
                          "vctypeCesopsn": {
                            "type": "boolean"
                          },
                          "vctypeCesopsnCas": {
                            "type": "boolean"
                          },
                          "vctypeSatopE1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT1": {
                            "type": "boolean"
                          },
                          "vctypeSatopT3": {
                            "type": "boolean"
                          },
                          "ycable": {
                            "type": "boolean"
                          }
                        },
                        "title": "PortCapabilityType"
                      },
                      "portSpeed": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The interface speed of the port"
                      },
                      "portType": {
                        "type": "string",
                        "description": "The type of port. Supported values are defined in RFC7224"
                      },
                      "role": {
                        "type": "string",
                        "description": "Whether the port is a UNI or NNI port",
                        "enum": [
                          "UNI",
                          "NNI"
                        ]
                      },
                      "tdm": {
                        "type": "object",
                        "properties": {
                          "channelFraming": {
                            "type": "string",
                            "description": "Specifies the channel framing configuration for the DS1/E1 port"
                          },
                          "ds0ChannelGroups": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "signalMode": {
                            "type": "string",
                            "enum": [
                              "SIGNAL_MODE_CAS",
                              "SIGNAL_MODE_NONE"
                            ]
                          }
                        },
                        "title": "Tdm",
                        "description": "Contains TDM DS1/E1 interface related configuration"
                      }
                    },
                    "title": "Port",
                    "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Port»»"
            }
          },
          "title": "ResponseData«List«Port»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTenant"
      },
      "task": true
    },
    {
      "name": "putV4PortsId",
      "summary": "Update the port",
      "description": "Update the port",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The unique identifier of the port to be modified: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "A request object used to modify Port: {\"data\": {\"protectionType\": \"Must be one of [working, protection]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies the protection type of the port. This only applies to client optical ports.",
                    "enum": [
                      "working",
                      "protection"
                    ]
                  }
                },
                "title": "PortRequest",
                "description": "A request object used to modify Port"
              }
            },
            "title": "Request«PortRequest»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "availableEgressBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the available egress bandwidth associated with a port"
                    },
                    "availableIngressBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the available ingress bandwidth associated with a port"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "dc": {
                      "type": "object",
                      "properties": {
                        "l3DomainTemplates": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        }
                      },
                      "title": "Dc",
                      "description": "Contains DC related configuration"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the port."
                    },
                    "ethernet": {
                      "type": "object",
                      "properties": {
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "lag": {
                          "type": "object",
                          "description": "Contains LAG related configuration"
                        },
                        "lldpConfiguration": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "lldpRemotePeers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "portMode": {
                          "type": "string",
                          "description": "The port-mode type of the ethernet port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        }
                      },
                      "title": "Ethernet",
                      "description": "Contains all Ethernet interface related configuration"
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "interfaceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The id of the port/interface"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the port"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "neId": {
                      "type": "string",
                      "description": "The router entity where the port resides"
                    },
                    "neName": {
                      "type": "string",
                      "description": "The name of the network equipment to which this endpoint belongs"
                    },
                    "nspDbFdn": {
                      "type": "string",
                      "description": "FDN of the port in the NSP DB"
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "optics": {
                      "type": "object",
                      "properties": {
                        "protectionType": {
                          "type": "string",
                          "description": "Specifies the protection type of the port",
                          "enum": [
                            "working",
                            "protection"
                          ]
                        }
                      },
                      "title": "Optics",
                      "description": "Contains Optical related configuration"
                    },
                    "portCapability": {
                      "type": "object",
                      "properties": {
                        "cline": {
                          "type": "boolean"
                        },
                        "elan": {
                          "type": "boolean"
                        },
                        "eline": {
                          "type": "boolean"
                        },
                        "ies": {
                          "type": "boolean"
                        },
                        "l2ExtensionNni": {
                          "type": "boolean"
                        },
                        "l2ExtensionUni": {
                          "type": "boolean"
                        },
                        "l2backhaul": {
                          "type": "boolean"
                        },
                        "l2dci": {
                          "type": "boolean"
                        },
                        "l3dci": {
                          "type": "boolean"
                        },
                        "l3vpn": {
                          "type": "boolean"
                        },
                        "lag": {
                          "type": "boolean"
                        },
                        "och": {
                          "type": "boolean"
                        },
                        "odu": {
                          "type": "boolean"
                        },
                        "opsa": {
                          "type": "boolean"
                        },
                        "opsb": {
                          "type": "boolean"
                        },
                        "physicalLink": {
                          "type": "boolean"
                        },
                        "vctypeCesopsn": {
                          "type": "boolean"
                        },
                        "vctypeCesopsnCas": {
                          "type": "boolean"
                        },
                        "vctypeSatopE1": {
                          "type": "boolean"
                        },
                        "vctypeSatopT1": {
                          "type": "boolean"
                        },
                        "vctypeSatopT3": {
                          "type": "boolean"
                        },
                        "ycable": {
                          "type": "boolean"
                        }
                      },
                      "title": "PortCapabilityType"
                    },
                    "portSpeed": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The interface speed of the port"
                    },
                    "portType": {
                      "type": "string",
                      "description": "The type of port. Supported values are defined in RFC7224"
                    },
                    "role": {
                      "type": "string",
                      "description": "Whether the port is a UNI or NNI port",
                      "enum": [
                        "UNI",
                        "NNI"
                      ]
                    },
                    "tdm": {
                      "type": "object",
                      "properties": {
                        "channelFraming": {
                          "type": "string",
                          "description": "Specifies the channel framing configuration for the DS1/E1 port"
                        },
                        "ds0ChannelGroups": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "signalMode": {
                          "type": "string",
                          "enum": [
                            "SIGNAL_MODE_CAS",
                            "SIGNAL_MODE_NONE"
                          ]
                        }
                      },
                      "title": "Tdm",
                      "description": "Contains TDM DS1/E1 interface related configuration"
                    }
                  },
                  "title": "Port",
                  "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Port»"
            }
          },
          "title": "ResponseData«Port»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putV4PortsId"
      },
      "task": true
    },
    {
      "name": "getV4PortsPortUuid",
      "summary": "Find a port by unique identifier",
      "description": "Find a port by unique identifier",
      "input": [
        {
          "name": "portUuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "portUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The current administrative state of the entity",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined, custom Application ID for the entity"
                    },
                    "availableEgressBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the available egress bandwidth associated with a port"
                    },
                    "availableIngressBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the available ingress bandwidth associated with a port"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "customAttributesTemplateId": {
                      "type": "string",
                      "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                    },
                    "dc": {
                      "type": "object",
                      "properties": {
                        "l3DomainTemplates": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        }
                      },
                      "title": "Dc",
                      "description": "Contains DC related configuration"
                    },
                    "description": {
                      "type": "string",
                      "description": "A textual description of the port."
                    },
                    "ethernet": {
                      "type": "object",
                      "properties": {
                        "encapType": {
                          "type": "string",
                          "description": "The encapsulation type of the ethernet port",
                          "enum": [
                            "Null",
                            "Unknown",
                            "Dot1Q",
                            "QinQ"
                          ]
                        },
                        "lag": {
                          "type": "object",
                          "description": "Contains LAG related configuration"
                        },
                        "lldpConfiguration": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "lldpRemotePeers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "portMode": {
                          "type": "string",
                          "description": "The port-mode type of the ethernet port",
                          "enum": [
                            "NETWORK",
                            "UNDEFINED",
                            "ACCESS",
                            "HYBRID"
                          ]
                        }
                      },
                      "title": "Ethernet",
                      "description": "Contains all Ethernet interface related configuration"
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the entity"
                    },
                    "interfaceId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The id of the port/interface"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the port"
                    },
                    "neDeploymentState": {
                      "type": "string",
                      "description": "The current deployment state of the entity",
                      "enum": [
                        "DEPLOYED",
                        "NA",
                        "FAILED",
                        "UNKNOWN",
                        "PENDING"
                      ]
                    },
                    "neId": {
                      "type": "string",
                      "description": "The router entity where the port resides"
                    },
                    "neName": {
                      "type": "string",
                      "description": "The name of the network equipment to which this endpoint belongs"
                    },
                    "nspDbFdn": {
                      "type": "string",
                      "description": "FDN of the port in the NSP DB"
                    },
                    "operationalState": {
                      "type": "string",
                      "description": "The current operational state of the entity",
                      "enum": [
                        "PARTIALLY_DOWN",
                        "TRANSITION",
                        "DOWN",
                        "DEGRADED",
                        "UNKNOWN",
                        "UP"
                      ]
                    },
                    "optics": {
                      "type": "object",
                      "properties": {
                        "protectionType": {
                          "type": "string",
                          "description": "Specifies the protection type of the port",
                          "enum": [
                            "working",
                            "protection"
                          ]
                        }
                      },
                      "title": "Optics",
                      "description": "Contains Optical related configuration"
                    },
                    "portCapability": {
                      "type": "object",
                      "properties": {
                        "cline": {
                          "type": "boolean"
                        },
                        "elan": {
                          "type": "boolean"
                        },
                        "eline": {
                          "type": "boolean"
                        },
                        "ies": {
                          "type": "boolean"
                        },
                        "l2ExtensionNni": {
                          "type": "boolean"
                        },
                        "l2ExtensionUni": {
                          "type": "boolean"
                        },
                        "l2backhaul": {
                          "type": "boolean"
                        },
                        "l2dci": {
                          "type": "boolean"
                        },
                        "l3dci": {
                          "type": "boolean"
                        },
                        "l3vpn": {
                          "type": "boolean"
                        },
                        "lag": {
                          "type": "boolean"
                        },
                        "och": {
                          "type": "boolean"
                        },
                        "odu": {
                          "type": "boolean"
                        },
                        "opsa": {
                          "type": "boolean"
                        },
                        "opsb": {
                          "type": "boolean"
                        },
                        "physicalLink": {
                          "type": "boolean"
                        },
                        "vctypeCesopsn": {
                          "type": "boolean"
                        },
                        "vctypeCesopsnCas": {
                          "type": "boolean"
                        },
                        "vctypeSatopE1": {
                          "type": "boolean"
                        },
                        "vctypeSatopT1": {
                          "type": "boolean"
                        },
                        "vctypeSatopT3": {
                          "type": "boolean"
                        },
                        "ycable": {
                          "type": "boolean"
                        }
                      },
                      "title": "PortCapabilityType"
                    },
                    "portSpeed": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The interface speed of the port"
                    },
                    "portType": {
                      "type": "string",
                      "description": "The type of port. Supported values are defined in RFC7224"
                    },
                    "role": {
                      "type": "string",
                      "description": "Whether the port is a UNI or NNI port",
                      "enum": [
                        "UNI",
                        "NNI"
                      ]
                    },
                    "tdm": {
                      "type": "object",
                      "properties": {
                        "channelFraming": {
                          "type": "string",
                          "description": "Specifies the channel framing configuration for the DS1/E1 port"
                        },
                        "ds0ChannelGroups": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "signalMode": {
                          "type": "string",
                          "enum": [
                            "SIGNAL_MODE_CAS",
                            "SIGNAL_MODE_NONE"
                          ]
                        }
                      },
                      "title": "Tdm",
                      "description": "Contains TDM DS1/E1 interface related configuration"
                    }
                  },
                  "title": "Port",
                  "description": "The port definition. A port is a physical termination on a network element. The port is provided during a service creation. A port may belong to one or many services if the port type is Dot1Q or QinQ."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Port»"
            }
          },
          "title": "ResponseData«Port»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4PortsPortUuid"
      },
      "task": true
    },
    {
      "name": "getAuthentication",
      "summary": "Retrieve information about the currently-authenticated user from the perspective of the system",
      "description": "Retrieve information about the currently-authenticated user from the perspective of the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "expires": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the expiry date of the token in milliseconds since January 1, 1970, 00:00:00 GMT"
                    },
                    "roles": {
                      "type": "array",
                      "description": "The role(s) this User has relative to their Tenant",
                      "items": {
                        "type": "string",
                        "enum": [
                          "OPERATOR",
                          "ADMIN",
                          "USER"
                        ]
                      }
                    },
                    "tenant": {
                      "type": "object",
                      "required": [
                        "tenantName"
                      ],
                      "properties": {
                        "address": {
                          "type": "string",
                          "description": "The mailing address for the tenant"
                        },
                        "contactName": {
                          "type": "string",
                          "description": "The contact name for the tenant"
                        },
                        "customerId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                        },
                        "id": {
                          "type": "string",
                          "description": "The unique identifier for the tenant"
                        },
                        "phoneNumber": {
                          "type": "string",
                          "description": "The phone number for the tenant"
                        },
                        "tenantName": {
                          "type": "string",
                          "description": "The name of the tenant"
                        }
                      },
                      "title": "Tenant",
                      "description": "A tenant is a logical group that allows the assigning of network resources"
                    },
                    "user": {
                      "type": "object",
                      "required": [
                        "id",
                        "name"
                      ],
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "The user unique identifier"
                        },
                        "name": {
                          "type": "string",
                          "description": "The user name"
                        }
                      },
                      "title": "User",
                      "description": "The user defined in the system"
                    }
                  },
                  "title": "Authentication",
                  "description": "Information regarding the current authentication status of the user"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Authentication»"
            }
          },
          "title": "ResponseData«Authentication»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAuthentication"
      },
      "task": true
    },
    {
      "name": "createConstraintTest",
      "summary": "BETA - Run service constraint test",
      "description": "BETA - Run service constraint test",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The UUID of service to run constraint test on: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "fileName": {
                      "type": "string",
                      "description": "Name of file in tomcat logs that contains test result"
                    },
                    "success": {
                      "type": "boolean",
                      "description": "Result of constraint test invocation"
                    }
                  },
                  "title": "ServiceDebugResult",
                  "description": "An object to request a constraint test on a service"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ServiceDebugResult»"
            }
          },
          "title": "ResponseData«ServiceDebugResult»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createConstraintTest"
      },
      "task": true
    },
    {
      "name": "createDciRecompute",
      "summary": "Triggers re-computation for a L2 or L3 DCI Service. The DCI Service types automatically react to to",
      "description": "Triggers re-computation for a L2 or L3 DCI Service. The DCI Service types automatically react to topological and service requirements and perform necessary differential actions for the service however this API can be used to manually invoke that execution. The process that is normally automatically triggered to differentiate the service state with the required state will be triggered",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The UUID of the L2 or L3 DCI Service to run a re-computation against. Differential Output will only be visible in the NSP log files. The result of this API will indicate ...(description truncated): string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createDciRecompute"
      },
      "task": true
    },
    {
      "name": "isMaster",
      "summary": "NSP server is master",
      "description": "NSP server is master",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/isMaster"
      },
      "task": true
    },
    {
      "name": "setPluginConnect",
      "summary": "BETA: Forces NSP Plugin to form a specific connection",
      "description": "BETA: Forces NSP Plugin to form a specific connection",
      "input": [
        {
          "name": "pluginKey",
          "type": "string",
          "info": "The key for the target plugin for example IP Address: string",
          "required": true,
          "schema": {
            "title": "pluginKey",
            "type": "string"
          }
        },
        {
          "name": "pluginName",
          "type": "string",
          "info": "The name of the plugin: Must be one of [VSR_NRC]",
          "required": true,
          "schema": {
            "title": "pluginName",
            "type": "string"
          }
        },
        {
          "name": "pluginVId",
          "type": "number",
          "info": "The virtual identifier for the target plugin: 123",
          "required": true,
          "schema": {
            "title": "pluginVId",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/setPluginConnect"
      },
      "task": true
    },
    {
      "name": "resyncNms",
      "summary": "Triggers a data synchronization with the connected NMS",
      "description": "Triggers a data synchronization with the connected NMS",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/resyncNms"
      },
      "task": true
    },
    {
      "name": "resyncObject",
      "summary": "Triggers a data synchronization with the connected NMS on a specific object",
      "description": "Triggers a data synchronization with the connected NMS on a specific object",
      "input": [
        {
          "name": "uuid",
          "type": "string",
          "info": "The unique identifier of the object to be synchronized: string",
          "required": true,
          "schema": {
            "title": "uuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/resyncObject"
      },
      "task": true
    },
    {
      "name": "getState",
      "summary": "Retrieves the state of the system",
      "description": "Retrieves the state of the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getState"
      },
      "task": true
    },
    {
      "name": "getVersion",
      "summary": "Retrieves the version of the system",
      "description": "Retrieves the version of the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "string",
                  "enum": [
                    "READY",
                    "INIT"
                  ]
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«string»"
            }
          },
          "title": "ResponseData«string»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getVersion"
      },
      "task": true
    },
    {
      "name": "getAllClineServices",
      "summary": "Query all C-Line service creation templates",
      "description": "Query all C-Line service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service.",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "cemUseRtpHeader": {
                        "type": "boolean",
                        "description": "Enable the inclusion of RTP header. It is disabled by default."
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "monitorBandwidth": {
                        "type": "boolean",
                        "description": "Specifies whether or not the service bandwidth should be monitored"
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are between 0 and 9194."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vcType": {
                        "type": "string",
                        "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                        "enum": [
                          "SATOP_E1",
                          "SATOP_T1",
                          "SATOP_E3",
                          "ETHERNET",
                          "CESOPSN",
                          "SATOP_T3",
                          "CESOPSN_CAS",
                          "ETHERNET_TAGGED_MODE"
                        ]
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "ClineServiceCreationTemplate",
                    "description": "This template is used during C-Line service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«ClineServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«ClineServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllClineServices"
      },
      "task": true
    },
    {
      "name": "createClineServices",
      "summary": "Create a C-Line service creation template",
      "description": "Create a C-Line service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during C-Line service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"cemUseRtpHeader\": \"boolean\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "cemUseRtpHeader": {
                    "type": "boolean",
                    "description": "Enable the inclusion of RTP header. It is disabled by default."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ClineServiceCreationTemplate",
                "description": "This template is used during C-Line service creation"
              }
            },
            "title": "Request«ClineServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "cemUseRtpHeader": {
                      "type": "boolean",
                      "description": "Enable the inclusion of RTP header. It is disabled by default."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ClineServiceCreationTemplate",
                  "description": "This template is used during C-Line service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ClineServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ClineServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createClineServices"
      },
      "task": true
    },
    {
      "name": "getClineServices",
      "summary": "Find a C-Line service creation template by its unique identifier",
      "description": "Find a C-Line service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "cemUseRtpHeader": {
                      "type": "boolean",
                      "description": "Enable the inclusion of RTP header. It is disabled by default."
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ClineServiceCreationTemplate",
                  "description": "This template is used during C-Line service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ClineServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ClineServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getClineServices"
      },
      "task": true
    },
    {
      "name": "updateClineServices",
      "summary": "Modify a C-Line service creation template",
      "description": "Modify a C-Line service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during C-Line service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"cemUseRtpHeader\": \"boolean\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "cemUseRtpHeader": {
                    "type": "boolean",
                    "description": "Enable the inclusion of RTP header. It is disabled by default."
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ClineServiceCreationTemplate",
                "description": "This template is used during C-Line service creation"
              }
            },
            "title": "Request«ClineServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateClineServices"
      },
      "task": true
    },
    {
      "name": "deleteClineServices",
      "summary": "Delete a C-Line service creation template",
      "description": "Delete a C-Line service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteClineServices"
      },
      "task": true
    },
    {
      "name": "getAllCustomAttributes",
      "summary": "Query all Custom Attributes templates",
      "description": "Query all Custom Attributes templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      }
                    },
                    "title": "CustomAttributesTemplate",
                    "description": "custom attributes template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«CustomAttributesTemplate»»"
            }
          },
          "title": "ResponseData«List«CustomAttributesTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllCustomAttributes"
      },
      "task": true
    },
    {
      "name": "createCustomAttributes",
      "summary": "Create a Custom Attributes template",
      "description": "Create a Custom Attributes template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "custom attributes template: {\"data\": {\"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "CustomAttributesTemplate",
                "description": "custom attributes template"
              }
            },
            "title": "Request«CustomAttributesTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "CustomAttributesTemplate",
                  "description": "custom attributes template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«CustomAttributesTemplate»"
            }
          },
          "title": "ResponseData«CustomAttributesTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createCustomAttributes"
      },
      "task": true
    },
    {
      "name": "getCustomAttributes",
      "summary": "Find a Custom Attributes template by its unique identifier",
      "description": "Find a Custom Attributes template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "customAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attributeName": {
                            "type": "string",
                            "description": "custom attribute name"
                          },
                          "attributeValue": {
                            "type": "string",
                            "description": "custom attribute value"
                          }
                        },
                        "title": "CustomAttribute",
                        "description": "A custom attribute"
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "CustomAttributesTemplate",
                  "description": "custom attributes template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«CustomAttributesTemplate»"
            }
          },
          "title": "ResponseData«CustomAttributesTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCustomAttributes"
      },
      "task": true
    },
    {
      "name": "updateCustomAttributes",
      "summary": "Modify a Custom Attributes template",
      "description": "Modify a Custom Attributes template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "custom attributes template: {\"data\": {\"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "title": "CustomAttribute",
                      "description": "A custom attribute"
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "CustomAttributesTemplate",
                "description": "custom attributes template"
              }
            },
            "title": "Request«CustomAttributesTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique identifier of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateCustomAttributes"
      },
      "task": true
    },
    {
      "name": "deleteCustomAttributes",
      "summary": "Delete a Custom Attributes template",
      "description": "Delete a Custom Attributes template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteCustomAttributes"
      },
      "task": true
    },
    {
      "name": "getAllElanServices",
      "summary": "Query all E-LAN service creation templates",
      "description": "Query all E-LAN service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service.",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "autoBindType": {
                        "type": "string",
                        "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan",
                        "enum": [
                          "sr_isis",
                          "rsvp_te",
                          "sr_te",
                          "ldp",
                          "bgp",
                          "none",
                          "gre",
                          "sr_ospf",
                          "any"
                        ]
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "extensionTemplate": {
                        "type": "object",
                        "properties": {
                          "allowL2ExtensionConfiguration": {
                            "type": "boolean",
                            "description": "Allow L2 Extension"
                          },
                          "enableL2ExtensionAugmentation": {
                            "type": "boolean",
                            "description": "Enable L2 Augmentation "
                          },
                          "nni": {
                            "type": "object",
                            "properties": {
                              "autosetTagsToMatchServiceEndpoint": {
                                "type": "boolean",
                                "description": "Auto-set the NNI tags to match the service-endpoint"
                              },
                              "innerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The inner tag. Applicable QinQ ports."
                              },
                              "outerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                              }
                            },
                            "title": "EndpointExtensionNniTemplate"
                          },
                          "uni": {
                            "type": "object",
                            "properties": {
                              "innerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The inner tag. Applicable QinQ ports."
                              },
                              "outerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                              }
                            },
                            "title": "EndpointExtensionPortTemplate"
                          }
                        },
                        "title": "EndpointExtensionTemplate"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "monitorBandwidth": {
                        "type": "boolean",
                        "description": "Specifies whether or not the service bandwidth should be monitored"
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are between 0 and 9194."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "relaxEndpointValidation": {
                        "type": "boolean",
                        "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vcType": {
                        "type": "string",
                        "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                        "enum": [
                          "SATOP_E1",
                          "SATOP_T1",
                          "SATOP_E3",
                          "ETHERNET",
                          "CESOPSN",
                          "SATOP_T3",
                          "CESOPSN_CAS",
                          "ETHERNET_TAGGED_MODE"
                        ]
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "ElanServiceCreationTemplate",
                    "description": "This template is used during E-LAN service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«ElanServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«ElanServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllElanServices"
      },
      "task": true
    },
    {
      "name": "createElanServices",
      "summary": "Create an E-LAN service creation template",
      "description": "Create an E-LAN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during E-LAN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"extensionTemplate\": {\"allowL2ExtensionConfiguration\": \"boolean\", \"enableL2ExtensionAugmentation\": \"boolean\", \"nni\": {\"autosetTagsToMatchServiceEndpoint\": \"boolean\", \"innerTag\": 123, \"outerTag\": 123}, \"uni\": {\"innerTag\": 123, \"outerTag\": 123}}, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "extensionTemplate": {
                    "type": "object",
                    "properties": {
                      "allowL2ExtensionConfiguration": {
                        "type": "boolean",
                        "description": "Allow L2 Extension"
                      },
                      "enableL2ExtensionAugmentation": {
                        "type": "boolean",
                        "description": "Enable L2 Augmentation "
                      },
                      "nni": {
                        "type": "object",
                        "properties": {
                          "autosetTagsToMatchServiceEndpoint": {
                            "type": "boolean",
                            "description": "Auto-set the NNI tags to match the service-endpoint"
                          },
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionNniTemplate"
                      },
                      "uni": {
                        "type": "object",
                        "properties": {
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionPortTemplate"
                      }
                    },
                    "title": "EndpointExtensionTemplate"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ElanServiceCreationTemplate",
                "description": "This template is used during E-LAN service creation"
              }
            },
            "title": "Request«ElanServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autoBindType": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "extensionTemplate": {
                      "type": "object",
                      "properties": {
                        "allowL2ExtensionConfiguration": {
                          "type": "boolean",
                          "description": "Allow L2 Extension"
                        },
                        "enableL2ExtensionAugmentation": {
                          "type": "boolean",
                          "description": "Enable L2 Augmentation "
                        },
                        "nni": {
                          "type": "object",
                          "properties": {
                            "autosetTagsToMatchServiceEndpoint": {
                              "type": "boolean",
                              "description": "Auto-set the NNI tags to match the service-endpoint"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionNniTemplate"
                        },
                        "uni": {
                          "type": "object",
                          "properties": {
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionPortTemplate"
                        }
                      },
                      "title": "EndpointExtensionTemplate"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ElanServiceCreationTemplate",
                  "description": "This template is used during E-LAN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ElanServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ElanServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createElanServices"
      },
      "task": true
    },
    {
      "name": "getElanServices",
      "summary": "Find an E-LAN service creation template by its unique identifier",
      "description": "Find an E-LAN service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autoBindType": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "extensionTemplate": {
                      "type": "object",
                      "properties": {
                        "allowL2ExtensionConfiguration": {
                          "type": "boolean",
                          "description": "Allow L2 Extension"
                        },
                        "enableL2ExtensionAugmentation": {
                          "type": "boolean",
                          "description": "Enable L2 Augmentation "
                        },
                        "nni": {
                          "type": "object",
                          "properties": {
                            "autosetTagsToMatchServiceEndpoint": {
                              "type": "boolean",
                              "description": "Auto-set the NNI tags to match the service-endpoint"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionNniTemplate"
                        },
                        "uni": {
                          "type": "object",
                          "properties": {
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionPortTemplate"
                        }
                      },
                      "title": "EndpointExtensionTemplate"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ElanServiceCreationTemplate",
                  "description": "This template is used during E-LAN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ElanServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ElanServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getElanServices"
      },
      "task": true
    },
    {
      "name": "updateElanServices",
      "summary": "Modify an E-LAN service creation template",
      "description": "Modify an E-LAN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during E-LAN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"extensionTemplate\": {\"allowL2ExtensionConfiguration\": \"boolean\", \"enableL2ExtensionAugmentation\": \"boolean\", \"nni\": {\"autosetTagsToMatchServiceEndpoint\": \"boolean\", \"innerTag\": 123, \"outerTag\": 123}, \"uni\": {\"innerTag\": 123, \"outerTag\": 123}}, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Lan. Other Autobind types create eVPN-based E-Lan",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "extensionTemplate": {
                    "type": "object",
                    "properties": {
                      "allowL2ExtensionConfiguration": {
                        "type": "boolean",
                        "description": "Allow L2 Extension"
                      },
                      "enableL2ExtensionAugmentation": {
                        "type": "boolean",
                        "description": "Enable L2 Augmentation "
                      },
                      "nni": {
                        "type": "object",
                        "properties": {
                          "autosetTagsToMatchServiceEndpoint": {
                            "type": "boolean",
                            "description": "Auto-set the NNI tags to match the service-endpoint"
                          },
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionNniTemplate"
                      },
                      "uni": {
                        "type": "object",
                        "properties": {
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionPortTemplate"
                      }
                    },
                    "title": "EndpointExtensionTemplate"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ElanServiceCreationTemplate",
                "description": "This template is used during E-LAN service creation"
              }
            },
            "title": "Request«ElanServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElanServices"
      },
      "task": true
    },
    {
      "name": "deleteElanServices",
      "summary": "Delete an E-LAN service creation template",
      "description": "Delete an E-LAN service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteElanServices"
      },
      "task": true
    },
    {
      "name": "getAllElineServices",
      "summary": "Query all E-Line service creation templates",
      "description": "Query all E-Line service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service.",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "autoBindType": {
                        "type": "string",
                        "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based E-Line.",
                        "enum": [
                          "sr_isis",
                          "rsvp_te",
                          "sr_te",
                          "ldp",
                          "bgp",
                          "none",
                          "gre",
                          "sr_ospf",
                          "any"
                        ]
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "extensionTemplate": {
                        "type": "object",
                        "properties": {
                          "allowL2ExtensionConfiguration": {
                            "type": "boolean",
                            "description": "Allow L2 Extension"
                          },
                          "enableL2ExtensionAugmentation": {
                            "type": "boolean",
                            "description": "Enable L2 Augmentation "
                          },
                          "nni": {
                            "type": "object",
                            "properties": {
                              "autosetTagsToMatchServiceEndpoint": {
                                "type": "boolean",
                                "description": "Auto-set the NNI tags to match the service-endpoint"
                              },
                              "innerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The inner tag. Applicable QinQ ports."
                              },
                              "outerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                              }
                            },
                            "title": "EndpointExtensionNniTemplate"
                          },
                          "uni": {
                            "type": "object",
                            "properties": {
                              "innerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The inner tag. Applicable QinQ ports."
                              },
                              "outerTag": {
                                "type": "integer",
                                "format": "int32",
                                "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                              }
                            },
                            "title": "EndpointExtensionPortTemplate"
                          }
                        },
                        "title": "EndpointExtensionTemplate"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "monitorBandwidth": {
                        "type": "boolean",
                        "description": "Specifies whether or not the service bandwidth should be monitored"
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are between 0 and 9194."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "relaxEndpointValidation": {
                        "type": "boolean",
                        "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vcType": {
                        "type": "string",
                        "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                        "enum": [
                          "SATOP_E1",
                          "SATOP_T1",
                          "SATOP_E3",
                          "ETHERNET",
                          "CESOPSN",
                          "SATOP_T3",
                          "CESOPSN_CAS",
                          "ETHERNET_TAGGED_MODE"
                        ]
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "ElineServiceCreationTemplate",
                    "description": "This template is used during E-Line service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«ElineServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«ElineServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllElineServices"
      },
      "task": true
    },
    {
      "name": "createElineServices",
      "summary": "Create an E-Line service creation template",
      "description": "Create an E-Line service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during E-Line service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"extensionTemplate\": {\"allowL2ExtensionConfiguration\": \"boolean\", \"enableL2ExtensionAugmentation\": \"boolean\", \"nni\": {\"autosetTagsToMatchServiceEndpoint\": \"boolean\", \"innerTag\": 123, \"outerTag\": 123}, \"uni\": {\"innerTag\": 123, \"outerTag\": 123}}, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based E-Line.",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "extensionTemplate": {
                    "type": "object",
                    "properties": {
                      "allowL2ExtensionConfiguration": {
                        "type": "boolean",
                        "description": "Allow L2 Extension"
                      },
                      "enableL2ExtensionAugmentation": {
                        "type": "boolean",
                        "description": "Enable L2 Augmentation "
                      },
                      "nni": {
                        "type": "object",
                        "properties": {
                          "autosetTagsToMatchServiceEndpoint": {
                            "type": "boolean",
                            "description": "Auto-set the NNI tags to match the service-endpoint"
                          },
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionNniTemplate"
                      },
                      "uni": {
                        "type": "object",
                        "properties": {
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionPortTemplate"
                      }
                    },
                    "title": "EndpointExtensionTemplate"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ElineServiceCreationTemplate",
                "description": "This template is used during E-Line service creation"
              }
            },
            "title": "Request«ElineServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autoBindType": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based E-Line.",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "extensionTemplate": {
                      "type": "object",
                      "properties": {
                        "allowL2ExtensionConfiguration": {
                          "type": "boolean",
                          "description": "Allow L2 Extension"
                        },
                        "enableL2ExtensionAugmentation": {
                          "type": "boolean",
                          "description": "Enable L2 Augmentation "
                        },
                        "nni": {
                          "type": "object",
                          "properties": {
                            "autosetTagsToMatchServiceEndpoint": {
                              "type": "boolean",
                              "description": "Auto-set the NNI tags to match the service-endpoint"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionNniTemplate"
                        },
                        "uni": {
                          "type": "object",
                          "properties": {
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionPortTemplate"
                        }
                      },
                      "title": "EndpointExtensionTemplate"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ElineServiceCreationTemplate",
                  "description": "This template is used during E-Line service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ElineServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ElineServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createElineServices"
      },
      "task": true
    },
    {
      "name": "getElineServices",
      "summary": "Find an E-Line service creation template by its unique identifier",
      "description": "Find an E-Line service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autoBindType": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based E-Line.",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "extensionTemplate": {
                      "type": "object",
                      "properties": {
                        "allowL2ExtensionConfiguration": {
                          "type": "boolean",
                          "description": "Allow L2 Extension"
                        },
                        "enableL2ExtensionAugmentation": {
                          "type": "boolean",
                          "description": "Enable L2 Augmentation "
                        },
                        "nni": {
                          "type": "object",
                          "properties": {
                            "autosetTagsToMatchServiceEndpoint": {
                              "type": "boolean",
                              "description": "Auto-set the NNI tags to match the service-endpoint"
                            },
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionNniTemplate"
                        },
                        "uni": {
                          "type": "object",
                          "properties": {
                            "innerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The inner tag. Applicable QinQ ports."
                            },
                            "outerTag": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                            }
                          },
                          "title": "EndpointExtensionPortTemplate"
                        }
                      },
                      "title": "EndpointExtensionTemplate"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "ElineServiceCreationTemplate",
                  "description": "This template is used during E-Line service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«ElineServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«ElineServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getElineServices"
      },
      "task": true
    },
    {
      "name": "updateElineServices",
      "summary": "Modify an E-Line service creation template",
      "description": "Modify an E-Line service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during E-Line service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autoBindType\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"extensionTemplate\": {\"allowL2ExtensionConfiguration\": \"boolean\", \"enableL2ExtensionAugmentation\": \"boolean\", \"nni\": {\"autosetTagsToMatchServiceEndpoint\": \"boolean\", \"innerTag\": 123, \"outerTag\": 123}, \"uni\": {\"innerTag\": 123, \"outerTag\": 123}}, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autoBindType": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service. The default autobind type is none and it creates PW-based E-Line. Other Autobind types create eVPN-based E-Line.",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "extensionTemplate": {
                    "type": "object",
                    "properties": {
                      "allowL2ExtensionConfiguration": {
                        "type": "boolean",
                        "description": "Allow L2 Extension"
                      },
                      "enableL2ExtensionAugmentation": {
                        "type": "boolean",
                        "description": "Enable L2 Augmentation "
                      },
                      "nni": {
                        "type": "object",
                        "properties": {
                          "autosetTagsToMatchServiceEndpoint": {
                            "type": "boolean",
                            "description": "Auto-set the NNI tags to match the service-endpoint"
                          },
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionNniTemplate"
                      },
                      "uni": {
                        "type": "object",
                        "properties": {
                          "innerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The inner tag. Applicable QinQ ports."
                          },
                          "outerTag": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                          }
                        },
                        "title": "EndpointExtensionPortTemplate"
                      }
                    },
                    "title": "EndpointExtensionTemplate"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "ElineServiceCreationTemplate",
                "description": "This template is used during E-Line service creation"
              }
            },
            "title": "Request«ElineServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateElineServices"
      },
      "task": true
    },
    {
      "name": "deleteElineServices",
      "summary": "Delete an E-Line service creation template",
      "description": "Delete an E-Line service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteElineServices"
      },
      "task": true
    },
    {
      "name": "getAllGenericQos",
      "summary": "Query all generic QoS profiles.",
      "description": "Query all generic QoS profiles.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "egressCosMappingTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cos": {
                              "type": "string",
                              "description": "Class of Service for the qos profile"
                            },
                            "queueId": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The ID of an endpoint queue."
                            }
                          },
                          "title": "CosMapping"
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "EgressParam",
                        "description": "Egress Qos policy parameters associated with an endpoint."
                      },
                      "egressPolicyList": {
                        "type": "array",
                        "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                        "items": {
                          "type": "string"
                        }
                      },
                      "egressQueueConfigurationTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "ingressCosMappingTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cos": {
                              "type": "string",
                              "description": "Class of Service for the qos profile"
                            },
                            "queueId": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The ID of an endpoint queue."
                            }
                          },
                          "title": "CosMapping"
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "IngressParam",
                        "description": "Ingress Qos policy parameters associated with an endpoint."
                      },
                      "ingressPolicyList": {
                        "type": "array",
                        "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                        "items": {
                          "type": "string"
                        }
                      },
                      "ingressQueueConfigurationTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      }
                    },
                    "title": "QosProfile",
                    "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«QosProfile»»"
            }
          },
          "title": "ResponseData«List«QosProfile»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllGenericQos"
      },
      "task": true
    },
    {
      "name": "createGenericQos",
      "summary": "Create a Generic QoS Profile",
      "description": "Create a Generic QoS Profile",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces.: {\"data\": {\"appId\": \"string\", \"egressCosMappingTable\": [{\"cos\": \"string\", \"queueId\": 123}], \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"egressPolicyList\": \"array\", \"egressQueueConfigurationTable\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"externalIds\": [{\"context\": \"Must be one of [NFM_T, NFM_P, NODE, MDM, NSP]\", \"id\": \"string\", \"location\": \"array\"}], \"id\": \"string\", \"ingressCosMappingTable\": [{\"cos\": \"string\", \"queueId\": 123}], \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"ingressPolicyList\": \"array\", \"ingressQueueConfigurationTable\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "egressCosMappingTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cos": {
                          "type": "string",
                          "description": "Class of Service for the qos profile"
                        },
                        "queueId": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The ID of an endpoint queue."
                        }
                      },
                      "title": "CosMapping"
                    }
                  },
                  "egressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "EgressParam",
                    "description": "Egress Qos policy parameters associated with an endpoint."
                  },
                  "egressPolicyList": {
                    "type": "array",
                    "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "egressQueueConfigurationTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "externalIds": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "description": "The entity type that is managing this external-id",
                          "enum": [
                            "NFM_T",
                            "NFM_P",
                            "NODE",
                            "MDM",
                            "NSP"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The local identifier used on the entity."
                        },
                        "location": {
                          "type": "array",
                          "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "title": "ExternalId",
                      "description": "An external identifier to the NSP."
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "ingressCosMappingTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cos": {
                          "type": "string",
                          "description": "Class of Service for the qos profile"
                        },
                        "queueId": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The ID of an endpoint queue."
                        }
                      },
                      "title": "CosMapping"
                    }
                  },
                  "ingressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "IngressParam",
                    "description": "Ingress Qos policy parameters associated with an endpoint."
                  },
                  "ingressPolicyList": {
                    "type": "array",
                    "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "ingressQueueConfigurationTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "QosProfile",
                "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
              }
            },
            "title": "Request«QosProfile»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "egressCosMappingTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cos": {
                            "type": "string",
                            "description": "Class of Service for the qos profile"
                          },
                          "queueId": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The ID of an endpoint queue."
                          }
                        },
                        "title": "CosMapping"
                      }
                    },
                    "egressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "EgressParam",
                      "description": "Egress Qos policy parameters associated with an endpoint."
                    },
                    "egressPolicyList": {
                      "type": "array",
                      "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "egressQueueConfigurationTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "ingressCosMappingTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cos": {
                            "type": "string",
                            "description": "Class of Service for the qos profile"
                          },
                          "queueId": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The ID of an endpoint queue."
                          }
                        },
                        "title": "CosMapping"
                      }
                    },
                    "ingressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "IngressParam",
                      "description": "Ingress Qos policy parameters associated with an endpoint."
                    },
                    "ingressPolicyList": {
                      "type": "array",
                      "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "ingressQueueConfigurationTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "QosProfile",
                  "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«QosProfile»"
            }
          },
          "title": "ResponseData«QosProfile»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createGenericQos"
      },
      "task": true
    },
    {
      "name": "getGenericQosProfiles",
      "summary": "Query all generic QoS profiles of the provided network element",
      "description": "Query all generic QoS profiles of the provided network element",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "egressCosMappingTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cos": {
                              "type": "string",
                              "description": "Class of Service for the qos profile"
                            },
                            "queueId": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The ID of an endpoint queue."
                            }
                          },
                          "title": "CosMapping"
                        }
                      },
                      "egressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "EgressParam",
                        "description": "Egress Qos policy parameters associated with an endpoint."
                      },
                      "egressPolicyList": {
                        "type": "array",
                        "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                        "items": {
                          "type": "string"
                        }
                      },
                      "egressQueueConfigurationTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "ingressCosMappingTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cos": {
                              "type": "string",
                              "description": "Class of Service for the qos profile"
                            },
                            "queueId": {
                              "type": "integer",
                              "format": "int32",
                              "description": "The ID of an endpoint queue."
                            }
                          },
                          "title": "CosMapping"
                        }
                      },
                      "ingressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "IngressParam",
                        "description": "Ingress Qos policy parameters associated with an endpoint."
                      },
                      "ingressPolicyList": {
                        "type": "array",
                        "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                        "items": {
                          "type": "string"
                        }
                      },
                      "ingressQueueConfigurationTable": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      }
                    },
                    "title": "QosProfile",
                    "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«QosProfile»»"
            }
          },
          "title": "ResponseData«List«QosProfile»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getGenericQosProfiles"
      },
      "task": true
    },
    {
      "name": "getGenericQos",
      "summary": "Find a generic QoS profile by its unique ID",
      "description": "Find a generic QoS profile by its unique ID",
      "input": [
        {
          "name": "gqpId",
          "type": "string",
          "info": "gqpId: string",
          "required": true,
          "schema": {
            "title": "gqpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "egressCosMappingTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cos": {
                            "type": "string",
                            "description": "Class of Service for the qos profile"
                          },
                          "queueId": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The ID of an endpoint queue."
                          }
                        },
                        "title": "CosMapping"
                      }
                    },
                    "egressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "EgressParam",
                      "description": "Egress Qos policy parameters associated with an endpoint."
                    },
                    "egressPolicyList": {
                      "type": "array",
                      "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "egressQueueConfigurationTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "externalIds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "context": {
                            "type": "string",
                            "description": "The entity type that is managing this external-id",
                            "enum": [
                              "NFM_T",
                              "NFM_P",
                              "NODE",
                              "MDM",
                              "NSP"
                            ]
                          },
                          "id": {
                            "type": "string",
                            "description": "The local identifier used on the entity."
                          },
                          "location": {
                            "type": "array",
                            "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "title": "ExternalId",
                        "description": "An external identifier to the NSP."
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "ingressCosMappingTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cos": {
                            "type": "string",
                            "description": "Class of Service for the qos profile"
                          },
                          "queueId": {
                            "type": "integer",
                            "format": "int32",
                            "description": "The ID of an endpoint queue."
                          }
                        },
                        "title": "CosMapping"
                      }
                    },
                    "ingressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "IngressParam",
                      "description": "Ingress Qos policy parameters associated with an endpoint."
                    },
                    "ingressPolicyList": {
                      "type": "array",
                      "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                      "items": {
                        "type": "string"
                      }
                    },
                    "ingressQueueConfigurationTable": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "QosProfile",
                  "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«QosProfile»"
            }
          },
          "title": "ResponseData«QosProfile»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getGenericQos"
      },
      "task": true
    },
    {
      "name": "updateGenericQos",
      "summary": "Update a Generic QoS Profile",
      "description": "Update a Generic QoS Profile",
      "input": [
        {
          "name": "gqpId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "gqpId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces.: {\"data\": {\"appId\": \"string\", \"egressCosMappingTable\": [{\"cos\": \"string\", \"queueId\": 123}], \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"egressPolicyList\": \"array\", \"egressQueueConfigurationTable\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"externalIds\": [{\"context\": \"Must be one of [NFM_T, NFM_P, NODE, MDM, NSP]\", \"id\": \"string\", \"location\": \"array\"}], \"id\": \"string\", \"ingressCosMappingTable\": [{\"cos\": \"string\", \"queueId\": 123}], \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"ingressPolicyList\": \"array\", \"ingressQueueConfigurationTable\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "egressCosMappingTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cos": {
                          "type": "string",
                          "description": "Class of Service for the qos profile"
                        },
                        "queueId": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The ID of an endpoint queue."
                        }
                      },
                      "title": "CosMapping"
                    }
                  },
                  "egressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "EgressParam",
                    "description": "Egress Qos policy parameters associated with an endpoint."
                  },
                  "egressPolicyList": {
                    "type": "array",
                    "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "egressQueueConfigurationTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "externalIds": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "description": "The entity type that is managing this external-id",
                          "enum": [
                            "NFM_T",
                            "NFM_P",
                            "NODE",
                            "MDM",
                            "NSP"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "The local identifier used on the entity."
                        },
                        "location": {
                          "type": "array",
                          "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "title": "ExternalId",
                      "description": "An external identifier to the NSP."
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "ingressCosMappingTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cos": {
                          "type": "string",
                          "description": "Class of Service for the qos profile"
                        },
                        "queueId": {
                          "type": "integer",
                          "format": "int32",
                          "description": "The ID of an endpoint queue."
                        }
                      },
                      "title": "CosMapping"
                    }
                  },
                  "ingressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "IngressParam",
                    "description": "Ingress Qos policy parameters associated with an endpoint."
                  },
                  "ingressPolicyList": {
                    "type": "array",
                    "description": "The list of policy names as discovered from the network element. These policies don't need to be discovered yet.",
                    "items": {
                      "type": "string"
                    }
                  },
                  "ingressQueueConfigurationTable": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "QosProfile",
                "description": "The Generic QoS Profile (GQP), which applies to L2 and L3 access interfaces."
              }
            },
            "title": "Request«QosProfile»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateGenericQos"
      },
      "task": true
    },
    {
      "name": "deleteGenericQos",
      "summary": "Delete a Generic QoS Profile",
      "description": "Delete a Generic QoS Profile",
      "input": [
        {
          "name": "gqpId",
          "type": "string",
          "info": "gqpId: string",
          "required": true,
          "schema": {
            "title": "gqpId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteGenericQos"
      },
      "task": true
    },
    {
      "name": "getAllIesServices",
      "summary": "Query all IES service creation templates",
      "description": "Query all IES service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service"
                      },
                      "relaxEndpointValidation": {
                        "type": "boolean",
                        "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "IesServiceCreationTemplate",
                    "description": "This template is used during IES service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«IesServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«IesServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllIesServices"
      },
      "task": true
    },
    {
      "name": "createIesServices",
      "summary": "Create an IES service creation template",
      "description": "Create an IES service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during IES service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "IesServiceCreationTemplate",
                "description": "This template is used during IES service creation"
              }
            },
            "title": "Request«IesServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "IesServiceCreationTemplate",
                  "description": "This template is used during IES service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«IesServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«IesServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createIesServices"
      },
      "task": true
    },
    {
      "name": "getIesServices",
      "summary": "Find an IES service creation template by its unique identifier",
      "description": "Find an IES service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "IesServiceCreationTemplate",
                  "description": "This template is used during IES service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«IesServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«IesServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getIesServices"
      },
      "task": true
    },
    {
      "name": "updateIesServices",
      "summary": "Modify an IES service creation template",
      "description": "Modify an IES service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during IES service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "IesServiceCreationTemplate",
                "description": "This template is used during IES service creation"
              }
            },
            "title": "Request«IesServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateIesServices"
      },
      "task": true
    },
    {
      "name": "deleteIesServices",
      "summary": "Delete an IES service creation template",
      "description": "Delete an IES service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteIesServices"
      },
      "task": true
    },
    {
      "name": "getAllL2DciVpnServices",
      "summary": "Query all L2 DCI VPN service creation templates",
      "description": "Query all L2 DCI VPN service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "autobind": {
                        "type": "string",
                        "description": "The type of autobind to be used for the service",
                        "enum": [
                          "sr_isis",
                          "rsvp_te",
                          "sr_te",
                          "ldp",
                          "bgp",
                          "none",
                          "gre",
                          "sr_ospf",
                          "any"
                        ]
                      },
                      "descriptionGenerationTemplate": {
                        "type": "string",
                        "description": "A template pattern for L2 DCI description when auto generated. The parameters may include the arguments described in property nameGenerationTemplate"
                      },
                      "dualHomed": {
                        "type": "boolean",
                        "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                      },
                      "ecmp": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "nameGenerationMaxLength": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The maximum length for the generated service name. The name will be pruned. If collision happens, a random UUID is used in the <%callingName%> parameter and pruned to fit within the character limit"
                      },
                      "nameGenerationTemplate": {
                        "type": "string",
                        "description": "A template pattern for L2 DCI name when auto generated. Recommended value is to contain '<%callingName%>'. Key values available are: <%callingName%> From the underlying L2 domain name. This is the VSD L2 Domain name. <%callingKey%> From the underlying L2 domain passed in key. This is VSD l2 Domain uuid. <%random%> A randomized UUID with the dashes removed. "
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service"
                      },
                      "rdRtRangePolicyId": {
                        "type": "string",
                        "description": "The ID of the L3VPN RT/RD policy associated with the service."
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      }
                    },
                    "title": "L2DciVpnServiceCreationTemplate",
                    "description": "This template is used during L2 DCI VPN service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«L2DciVpnServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«L2DciVpnServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllL2DciVpnServices"
      },
      "task": true
    },
    {
      "name": "getL2DciVpnServices",
      "summary": "Find an L2 DCI VPN service creation template by its unique identifier",
      "description": "Find an L2 DCI VPN service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autobind": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "descriptionGenerationTemplate": {
                      "type": "string",
                      "description": "A template pattern for L2 DCI description when auto generated. The parameters may include the arguments described in property nameGenerationTemplate"
                    },
                    "dualHomed": {
                      "type": "boolean",
                      "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                    },
                    "ecmp": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "nameGenerationMaxLength": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The maximum length for the generated service name. The name will be pruned. If collision happens, a random UUID is used in the <%callingName%> parameter and pruned to fit within the character limit"
                    },
                    "nameGenerationTemplate": {
                      "type": "string",
                      "description": "A template pattern for L2 DCI name when auto generated. Recommended value is to contain '<%callingName%>'. Key values available are: <%callingName%> From the underlying L2 domain name. This is the VSD L2 Domain name. <%callingKey%> From the underlying L2 domain passed in key. This is VSD l2 Domain uuid. <%random%> A randomized UUID with the dashes removed. "
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "rdRtRangePolicyId": {
                      "type": "string",
                      "description": "The ID of the L3VPN RT/RD policy associated with the service."
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    }
                  },
                  "title": "L2DciVpnServiceCreationTemplate",
                  "description": "This template is used during L2 DCI VPN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L2DciVpnServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L2DciVpnServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2DciVpnServices"
      },
      "task": true
    },
    {
      "name": "updateL2DciVpnServices",
      "summary": "Modify an L2 DCI VPN service creation template",
      "description": "Modify an L2 DCI VPN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L2 DCI VPN service creation: {\"data\": {\"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"descriptionGenerationTemplate\": \"string\", \"dualHomed\": \"boolean\", \"ecmp\": 123, \"id\": \"string\", \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"nameGenerationMaxLength\": 123, \"nameGenerationTemplate\": \"string\", \"objectDescription\": \"string\", \"qosId\": \"string\", \"qosName\": \"string\", \"rdRtRangePolicyId\": \"string\", \"tunnelSelectionId\": \"string\", \"workflowProfileId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "descriptionGenerationTemplate": {
                    "type": "string",
                    "description": "A template pattern for L2 DCI description when auto generated. The parameters may include the arguments described in property nameGenerationTemplate"
                  },
                  "dualHomed": {
                    "type": "boolean",
                    "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                  },
                  "ecmp": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "nameGenerationMaxLength": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The maximum length for the generated service name. The name will be pruned. If collision happens, a random UUID is used in the <%callingName%> parameter and pruned to fit within the character limit"
                  },
                  "nameGenerationTemplate": {
                    "type": "string",
                    "description": "A template pattern for L2 DCI name when auto generated. Recommended value is to contain '<%callingName%>'. Key values available are: <%callingName%> From the underlying L2 domain name. This is the VSD L2 Domain name. <%callingKey%> From the underlying L2 domain passed in key. This is VSD l2 Domain uuid. <%random%> A randomized UUID with the dashes removed. "
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "rdRtRangePolicyId": {
                    "type": "string",
                    "description": "The ID of the L3VPN RT/RD policy associated with the service."
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  }
                },
                "title": "L2DciVpnServiceCreationTemplate",
                "description": "This template is used during L2 DCI VPN service creation"
              }
            },
            "title": "Request«L2DciVpnServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL2DciVpnServices"
      },
      "task": true
    },
    {
      "name": "getAllL2backhaulServices",
      "summary": "Query all L2 Backhaul service creation templates",
      "description": "Query all L2 Backhaul service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service.",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "monitorBandwidth": {
                        "type": "boolean",
                        "description": "Specifies whether or not the service bandwidth should be monitored"
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are between 0 and 9194."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vcType": {
                        "type": "string",
                        "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                        "enum": [
                          "SATOP_E1",
                          "SATOP_T1",
                          "SATOP_E3",
                          "ETHERNET",
                          "CESOPSN",
                          "SATOP_T3",
                          "CESOPSN_CAS",
                          "ETHERNET_TAGGED_MODE"
                        ]
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "L2backhaulServiceCreationTemplate",
                    "description": "This template is used during L2 Backhaul service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«L2backhaulServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«L2backhaulServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllL2backhaulServices"
      },
      "task": true
    },
    {
      "name": "createL2backhaulServices",
      "summary": "Create an L2 backhaul service creation template",
      "description": "Create an L2 backhaul service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L2 Backhaul service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L2backhaulServiceCreationTemplate",
                "description": "This template is used during L2 Backhaul service creation"
              }
            },
            "title": "Request«L2backhaulServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L2backhaulServiceCreationTemplate",
                  "description": "This template is used during L2 Backhaul service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L2backhaulServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L2backhaulServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL2backhaulServices"
      },
      "task": true
    },
    {
      "name": "getL2backhaulServices",
      "summary": "Find an L2 Backhaul service creation template by its unique identifier",
      "description": "Find an L2 Backhaul service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service.",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are between 0 and 9194."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vcType": {
                      "type": "string",
                      "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                      "enum": [
                        "SATOP_E1",
                        "SATOP_T1",
                        "SATOP_E3",
                        "ETHERNET",
                        "CESOPSN",
                        "SATOP_T3",
                        "CESOPSN_CAS",
                        "ETHERNET_TAGGED_MODE"
                      ]
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L2backhaulServiceCreationTemplate",
                  "description": "This template is used during L2 Backhaul service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L2backhaulServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L2backhaulServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL2backhaulServices"
      },
      "task": true
    },
    {
      "name": "updateL2backhaulServices",
      "summary": "Modify an L2 Backhaul service creation template",
      "description": "Modify an L2 Backhaul service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L2 Backhaul service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"meta\": \"array\", \"monitorBandwidth\": \"boolean\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"tunnelSelectionId\": \"string\", \"vcType\": \"Must be one of [SATOP_E1, SATOP_T1, SATOP_E3, ETHERNET, CESOPSN, SATOP_T3, CESOPSN_CAS, ETHERNET_TAGGED_MODE]\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service.",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are between 0 and 9194."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service. Not Supported on C-Line templates"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vcType": {
                    "type": "string",
                    "description": "The type of the pseudowire. For E-Line/E-LAN services, the valid values are Ethernet Tagged Mode (4) or Ethernet (5). For C-Line services, the valid values are SATOP E1 (11), SATOP T1 (12), CESOPSN (15) or CESOPSN CAS (17)",
                    "enum": [
                      "SATOP_E1",
                      "SATOP_T1",
                      "SATOP_E3",
                      "ETHERNET",
                      "CESOPSN",
                      "SATOP_T3",
                      "CESOPSN_CAS",
                      "ETHERNET_TAGGED_MODE"
                    ]
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L2backhaulServiceCreationTemplate",
                "description": "This template is used during L2 Backhaul service creation"
              }
            },
            "title": "Request«L2backhaulServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL2backhaulServices"
      },
      "task": true
    },
    {
      "name": "deleteL2backhaulServices",
      "summary": "Delete an L2 Backhaul service creation template",
      "description": "Delete an L2 Backhaul service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL2backhaulServices"
      },
      "task": true
    },
    {
      "name": "getAllL3DciVpnServices",
      "summary": "Query all L3 DCI VPN service creation templates",
      "description": "Query all L3 DCI VPN service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "autobind": {
                        "type": "string",
                        "description": "The type of autobind to be used for the service",
                        "enum": [
                          "sr_isis",
                          "rsvp_te",
                          "sr_te",
                          "ldp",
                          "bgp",
                          "none",
                          "gre",
                          "sr_ospf",
                          "any"
                        ]
                      },
                      "backhaulMtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU to used for the backhaul service connectivity"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "connectivity": {
                        "type": "string",
                        "description": "Specifies the technology method in which the connectivity should be provided",
                        "enum": [
                          "VXLAN_STITCHED",
                          "MPLS_E2E"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "dualHomed": {
                        "type": "boolean",
                        "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                      },
                      "ecmp": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service"
                      },
                      "rdRtRangePolicyId": {
                        "type": "string",
                        "description": "The ID of the L3VPN RT/RD policy associated with the service."
                      },
                      "relaxEndpointValidation": {
                        "type": "boolean",
                        "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                      },
                      "transportSliceName": {
                        "type": "string",
                        "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vrfPerEndpoint": {
                        "type": "boolean",
                        "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "L3DciVpnServiceCreationTemplate",
                    "description": "This template is used during L3 DCI VPN service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«L3DciVpnServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«L3DciVpnServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllL3DciVpnServices"
      },
      "task": true
    },
    {
      "name": "createL3DciVpnServices",
      "summary": "Create an L3 DCI VPN service creation template",
      "description": "Create an L3 DCI VPN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L3 DCI VPN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"backhaulMtu\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"connectivity\": \"Must be one of [VXLAN_STITCHED, MPLS_E2E]\", \"customerId\": 123, \"dualHomed\": \"boolean\", \"ecmp\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"rdRtRangePolicyId\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vrfPerEndpoint\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "backhaulMtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU to used for the backhaul service connectivity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "connectivity": {
                    "type": "string",
                    "description": "Specifies the technology method in which the connectivity should be provided",
                    "enum": [
                      "VXLAN_STITCHED",
                      "MPLS_E2E"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "dualHomed": {
                    "type": "boolean",
                    "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                  },
                  "ecmp": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "rdRtRangePolicyId": {
                    "type": "string",
                    "description": "The ID of the L3VPN RT/RD policy associated with the service."
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vrfPerEndpoint": {
                    "type": "boolean",
                    "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L3DciVpnServiceCreationTemplate",
                "description": "This template is used during L3 DCI VPN service creation"
              }
            },
            "title": "Request«L3DciVpnServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autobind": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "backhaulMtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU to used for the backhaul service connectivity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "connectivity": {
                      "type": "string",
                      "description": "Specifies the technology method in which the connectivity should be provided",
                      "enum": [
                        "VXLAN_STITCHED",
                        "MPLS_E2E"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "dualHomed": {
                      "type": "boolean",
                      "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                    },
                    "ecmp": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "rdRtRangePolicyId": {
                      "type": "string",
                      "description": "The ID of the L3VPN RT/RD policy associated with the service."
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "transportSliceName": {
                      "type": "string",
                      "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vrfPerEndpoint": {
                      "type": "boolean",
                      "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L3DciVpnServiceCreationTemplate",
                  "description": "This template is used during L3 DCI VPN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L3DciVpnServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L3DciVpnServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL3DciVpnServices"
      },
      "task": true
    },
    {
      "name": "getL3DciVpnServices",
      "summary": "Find an L3 DCI VPN service creation template by its unique identifier",
      "description": "Find an L3 DCI VPN service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autobind": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "backhaulMtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU to used for the backhaul service connectivity"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "connectivity": {
                      "type": "string",
                      "description": "Specifies the technology method in which the connectivity should be provided",
                      "enum": [
                        "VXLAN_STITCHED",
                        "MPLS_E2E"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "dualHomed": {
                      "type": "boolean",
                      "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                    },
                    "ecmp": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "rdRtRangePolicyId": {
                      "type": "string",
                      "description": "The ID of the L3VPN RT/RD policy associated with the service."
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "transportSliceName": {
                      "type": "string",
                      "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vrfPerEndpoint": {
                      "type": "boolean",
                      "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L3DciVpnServiceCreationTemplate",
                  "description": "This template is used during L3 DCI VPN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L3DciVpnServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L3DciVpnServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3DciVpnServices"
      },
      "task": true
    },
    {
      "name": "updateL3DciVpnServices",
      "summary": "Modify an L3 DCI VPN service creation template",
      "description": "Modify an L3 DCI VPN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L3 DCI VPN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"backhaulMtu\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"connectivity\": \"Must be one of [VXLAN_STITCHED, MPLS_E2E]\", \"customerId\": 123, \"dualHomed\": \"boolean\", \"ecmp\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"rdRtRangePolicyId\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vrfPerEndpoint\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "backhaulMtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU to used for the backhaul service connectivity"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "connectivity": {
                    "type": "string",
                    "description": "Specifies the technology method in which the connectivity should be provided",
                    "enum": [
                      "VXLAN_STITCHED",
                      "MPLS_E2E"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "dualHomed": {
                    "type": "boolean",
                    "description": "Defines whether or not entities may be dual homed. If so, additional EVPN Service configurations to aid in dual-homed deployments will be issued"
                  },
                  "ecmp": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Maximum ECMP configuration to deploy on the service for tunnel binding"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "rdRtRangePolicyId": {
                    "type": "string",
                    "description": "The ID of the L3VPN RT/RD policy associated with the service."
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vrfPerEndpoint": {
                    "type": "boolean",
                    "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L3DciVpnServiceCreationTemplate",
                "description": "This template is used during L3 DCI VPN service creation"
              }
            },
            "title": "Request«L3DciVpnServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL3DciVpnServices"
      },
      "task": true
    },
    {
      "name": "deleteL3DciVpnServices",
      "summary": "Delete an L3 DCI VPN service creation template",
      "description": "Delete an L3 DCI VPN service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3DciVpnServices"
      },
      "task": true
    },
    {
      "name": "getAllL3VpnServices",
      "summary": "Query all L3 VPN service creation templates",
      "description": "Query all L3 VPN service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The administrative state required for the service",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "autobind": {
                        "type": "string",
                        "description": "The type of autobind to be used for the service",
                        "enum": [
                          "sr_isis",
                          "rsvp_te",
                          "sr_te",
                          "ldp",
                          "bgp",
                          "none",
                          "gre",
                          "sr_ospf",
                          "any"
                        ]
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "innerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "mediationProfileId": {
                        "type": "string",
                        "description": "The ID of the Mediation Profile associated with the service"
                      },
                      "meta": {
                        "type": "array",
                        "description": "Meta data associated with template",
                        "items": {
                          "type": "string"
                        }
                      },
                      "mtu": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "outerTag": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                      },
                      "portFilter": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "condition1": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition1"
                            },
                            "condition2": {
                              "type": "object",
                              "properties": {
                                "operator": {
                                  "type": "string",
                                  "description": "Specifies the operator to tell how to filter for value"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Specifies the value to filter on"
                                }
                              },
                              "title": "Condition2"
                            },
                            "connector": {
                              "type": "string",
                              "description": "Specifies operator that connects filter rules"
                            },
                            "groupNum": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Specifies the group filter element belongs to"
                            },
                            "name": {
                              "type": "string",
                              "description": "Specifies port key to filter on"
                            },
                            "operator": {
                              "type": "string",
                              "description": "Specifies operator between condition1 and condition2"
                            }
                          },
                          "title": "PortFilter"
                        }
                      },
                      "qosId": {
                        "type": "string",
                        "description": "The ID of the default QoS template associated with the service"
                      },
                      "qosName": {
                        "type": "string",
                        "description": "The name of the default QoS template associated with the service"
                      },
                      "rdRtRangePolicyId": {
                        "type": "string",
                        "description": "The ID of the L3VPN RT/RD policy associated with the service."
                      },
                      "relaxEndpointValidation": {
                        "type": "boolean",
                        "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                      },
                      "transportSliceName": {
                        "type": "string",
                        "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                      },
                      "tunnelSelectionId": {
                        "type": "string",
                        "description": "The ID of the Tunnel Selection template associated with the service."
                      },
                      "vrfPerEndpoint": {
                        "type": "boolean",
                        "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                      },
                      "workflowProfileId": {
                        "type": "string",
                        "description": "The ID of the Workflow Profile associated with the service"
                      },
                      "workflowValidate": {
                        "type": "string",
                        "description": "Workflow to run for service validation"
                      }
                    },
                    "title": "L3vpnServiceCreationTemplate",
                    "description": "This template is used during L3 VPN service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«L3vpnServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«L3vpnServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllL3VpnServices"
      },
      "task": true
    },
    {
      "name": "createL3VpnServices",
      "summary": "Create an L3 VPN service creation template",
      "description": "Create an L3 VPN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L3 VPN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"rdRtRangePolicyId\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vrfPerEndpoint\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "rdRtRangePolicyId": {
                    "type": "string",
                    "description": "The ID of the L3VPN RT/RD policy associated with the service."
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vrfPerEndpoint": {
                    "type": "boolean",
                    "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L3vpnServiceCreationTemplate",
                "description": "This template is used during L3 VPN service creation"
              }
            },
            "title": "Request«L3vpnServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autobind": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "rdRtRangePolicyId": {
                      "type": "string",
                      "description": "The ID of the L3VPN RT/RD policy associated with the service."
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "transportSliceName": {
                      "type": "string",
                      "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vrfPerEndpoint": {
                      "type": "boolean",
                      "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L3vpnServiceCreationTemplate",
                  "description": "This template is used during L3 VPN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L3vpnServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L3vpnServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createL3VpnServices"
      },
      "task": true
    },
    {
      "name": "getL3VpnServices",
      "summary": "Find an L3 VPN service creation template by its unique identifier",
      "description": "Find an L3 VPN service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "adminState": {
                      "type": "string",
                      "description": "The administrative state required for the service",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ]
                    },
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "autobind": {
                      "type": "string",
                      "description": "The type of autobind to be used for the service",
                      "enum": [
                        "sr_isis",
                        "rsvp_te",
                        "sr_te",
                        "ldp",
                        "bgp",
                        "none",
                        "gre",
                        "sr_ospf",
                        "any"
                      ]
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "innerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "mediationProfileId": {
                      "type": "string",
                      "description": "The ID of the Mediation Profile associated with the service"
                    },
                    "meta": {
                      "type": "array",
                      "description": "Meta data associated with template",
                      "items": {
                        "type": "string"
                      }
                    },
                    "mtu": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "outerTag": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                    },
                    "portFilter": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "condition1": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition1"
                          },
                          "condition2": {
                            "type": "object",
                            "properties": {
                              "operator": {
                                "type": "string",
                                "description": "Specifies the operator to tell how to filter for value"
                              },
                              "value": {
                                "type": "string",
                                "description": "Specifies the value to filter on"
                              }
                            },
                            "title": "Condition2"
                          },
                          "connector": {
                            "type": "string",
                            "description": "Specifies operator that connects filter rules"
                          },
                          "groupNum": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Specifies the group filter element belongs to"
                          },
                          "name": {
                            "type": "string",
                            "description": "Specifies port key to filter on"
                          },
                          "operator": {
                            "type": "string",
                            "description": "Specifies operator between condition1 and condition2"
                          }
                        },
                        "title": "PortFilter"
                      }
                    },
                    "qosId": {
                      "type": "string",
                      "description": "The ID of the default QoS template associated with the service"
                    },
                    "qosName": {
                      "type": "string",
                      "description": "The name of the default QoS template associated with the service"
                    },
                    "rdRtRangePolicyId": {
                      "type": "string",
                      "description": "The ID of the L3VPN RT/RD policy associated with the service."
                    },
                    "relaxEndpointValidation": {
                      "type": "boolean",
                      "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                    },
                    "transportSliceName": {
                      "type": "string",
                      "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                    },
                    "tunnelSelectionId": {
                      "type": "string",
                      "description": "The ID of the Tunnel Selection template associated with the service."
                    },
                    "vrfPerEndpoint": {
                      "type": "boolean",
                      "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                    },
                    "workflowProfileId": {
                      "type": "string",
                      "description": "The ID of the Workflow Profile associated with the service"
                    },
                    "workflowValidate": {
                      "type": "string",
                      "description": "Workflow to run for service validation"
                    }
                  },
                  "title": "L3vpnServiceCreationTemplate",
                  "description": "This template is used during L3 VPN service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«L3vpnServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«L3vpnServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getL3VpnServices"
      },
      "task": true
    },
    {
      "name": "updateL3VpnServices",
      "summary": "Modify an L3 VPN service creation template",
      "description": "Modify an L3 VPN service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during L3 VPN service creation: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"autobind\": \"Must be one of [sr_isis, rsvp_te, sr_te, ldp, bgp, none, gre, sr_ospf, any]\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"innerTag\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"mediationProfileId\": \"string\", \"meta\": \"array\", \"mtu\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"outerTag\": 123, \"portFilter\": [{\"condition1\": {\"operator\": \"string\", \"value\": \"string\"}, \"condition2\": {\"operator\": \"string\", \"value\": \"string\"}, \"connector\": \"string\", \"groupNum\": 123, \"name\": \"string\", \"operator\": \"string\"}], \"qosId\": \"string\", \"qosName\": \"string\", \"rdRtRangePolicyId\": \"string\", \"relaxEndpointValidation\": \"boolean\", \"transportSliceName\": \"string\", \"tunnelSelectionId\": \"string\", \"vrfPerEndpoint\": \"boolean\", \"workflowProfileId\": \"string\", \"workflowValidate\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "adminState": {
                    "type": "string",
                    "description": "The administrative state required for the service",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ]
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "autobind": {
                    "type": "string",
                    "description": "The type of autobind to be used for the service",
                    "enum": [
                      "sr_isis",
                      "rsvp_te",
                      "sr_te",
                      "ldp",
                      "bgp",
                      "none",
                      "gre",
                      "sr_ospf",
                      "any"
                    ]
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "innerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "mediationProfileId": {
                    "type": "string",
                    "description": "The ID of the Mediation Profile associated with the service"
                  },
                  "meta": {
                    "type": "array",
                    "description": "Meta data associated with template",
                    "items": {
                      "type": "string"
                    }
                  },
                  "mtu": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The MTU for the service. The valid values are 0 (which means to use the port's MTU) or between 512 and 9000. Applied to all endpoints."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "outerTag": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portFilter": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "condition1": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition1"
                        },
                        "condition2": {
                          "type": "object",
                          "properties": {
                            "operator": {
                              "type": "string",
                              "description": "Specifies the operator to tell how to filter for value"
                            },
                            "value": {
                              "type": "string",
                              "description": "Specifies the value to filter on"
                            }
                          },
                          "title": "Condition2"
                        },
                        "connector": {
                          "type": "string",
                          "description": "Specifies operator that connects filter rules"
                        },
                        "groupNum": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Specifies the group filter element belongs to"
                        },
                        "name": {
                          "type": "string",
                          "description": "Specifies port key to filter on"
                        },
                        "operator": {
                          "type": "string",
                          "description": "Specifies operator between condition1 and condition2"
                        }
                      },
                      "title": "PortFilter"
                    }
                  },
                  "qosId": {
                    "type": "string",
                    "description": "The ID of the default QoS template associated with the service"
                  },
                  "qosName": {
                    "type": "string",
                    "description": "The name of the default QoS template associated with the service"
                  },
                  "rdRtRangePolicyId": {
                    "type": "string",
                    "description": "The ID of the L3VPN RT/RD policy associated with the service."
                  },
                  "relaxEndpointValidation": {
                    "type": "boolean",
                    "description": "When enabled, SF will not validate mode or ensure that vlan tags entered match encapType of port. It is disabled by default."
                  },
                  "transportSliceName": {
                    "type": "string",
                    "description": "Name of Transport Slice to be used by the service; absent if none. a transport slice will be auto-created if it does not already exist"
                  },
                  "tunnelSelectionId": {
                    "type": "string",
                    "description": "The ID of the Tunnel Selection template associated with the service."
                  },
                  "vrfPerEndpoint": {
                    "type": "boolean",
                    "description": "When enabled, SF will create a new VRF for newly added endpoints if the VRF name is not specified in the request. Currently, only used by the UI."
                  },
                  "workflowProfileId": {
                    "type": "string",
                    "description": "The ID of the Workflow Profile associated with the service"
                  },
                  "workflowValidate": {
                    "type": "string",
                    "description": "Workflow to run for service validation"
                  }
                },
                "title": "L3vpnServiceCreationTemplate",
                "description": "This template is used during L3 VPN service creation"
              }
            },
            "title": "Request«L3vpnServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateL3VpnServices"
      },
      "task": true
    },
    {
      "name": "deleteL3VpnServices",
      "summary": "Delete an L3 VPN service creation template",
      "description": "Delete an L3 VPN service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteL3VpnServices"
      },
      "task": true
    },
    {
      "name": "getAllLagServices",
      "summary": "Query all LAG service creation templates",
      "description": "Query all LAG service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for LAG service creation"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "monitorBandwidth": {
                        "type": "boolean",
                        "description": "Specifies whether or not the service bandwidth should be monitored"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "reverseBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the reverse bandwidth required for LAG service creation"
                      }
                    },
                    "title": "LagServiceCreationTemplate",
                    "description": "This template is used during LAG service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«LagServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«LagServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllLagServices"
      },
      "task": true
    },
    {
      "name": "createLagServices",
      "summary": "Create a LAG service creation template",
      "description": "Create a LAG service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during LAG service creation: {\"data\": {\"appId\": \"string\", \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"monitorBandwidth\": \"boolean\", \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"reverseBandwidth\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for LAG service creation"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "reverseBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the reverse bandwidth required for LAG service creation"
                  }
                },
                "title": "LagServiceCreationTemplate",
                "description": "This template is used during LAG service creation"
              }
            },
            "title": "Request«LagServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for LAG service creation"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "reverseBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the reverse bandwidth required for LAG service creation"
                    }
                  },
                  "title": "LagServiceCreationTemplate",
                  "description": "This template is used during LAG service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«LagServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«LagServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createLagServices"
      },
      "task": true
    },
    {
      "name": "getLagServices",
      "summary": "Find a LAG service creation template by its unique identifier",
      "description": "Find a LAG service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for LAG service creation"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "monitorBandwidth": {
                      "type": "boolean",
                      "description": "Specifies whether or not the service bandwidth should be monitored"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "reverseBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the reverse bandwidth required for LAG service creation"
                    }
                  },
                  "title": "LagServiceCreationTemplate",
                  "description": "This template is used during LAG service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«LagServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«LagServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getLagServices"
      },
      "task": true
    },
    {
      "name": "updateLagServices",
      "summary": "Modify a LAG service creation template",
      "description": "Modify a LAG service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during LAG service creation: {\"data\": {\"appId\": \"string\", \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"monitorBandwidth\": \"boolean\", \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"reverseBandwidth\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for LAG service creation"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "monitorBandwidth": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service bandwidth should be monitored"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "reverseBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the reverse bandwidth required for LAG service creation"
                  }
                },
                "title": "LagServiceCreationTemplate",
                "description": "This template is used during LAG service creation"
              }
            },
            "title": "Request«LagServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateLagServices"
      },
      "task": true
    },
    {
      "name": "deleteLagServices",
      "summary": "Delete a LAG service creation template",
      "description": "Delete a LAG service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteLagServices"
      },
      "task": true
    },
    {
      "name": "createMediationProfileMapping",
      "summary": "Create an Mediation profile Mapping",
      "description": "Create an Mediation profile Mapping",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Mediation profile that defines the Mediation and their template associations.: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"mediationInfos\": [{\"mediationName\": \"string\", \"mediationVersion\": \"string\", \"templateGlobalName\": \"string\"}], \"name\": \"string\", \"objectDescription\": \"string\", \"profileType\": \"Must be one of [ELAN, CLINE, ELINE, IES, L3VPN]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "mediationInfos": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "mediationName": {
                          "type": "string",
                          "description": "The Application Mediation Interface name. If the mediation info is for network elements managed by NFM-P then this value must be 'NfmpService'. For MDM managed nodes, the valid values are dynamic and can be queried using the get /v4/mediation/ami-version-templates rpc."
                        },
                        "mediationVersion": {
                          "type": "string",
                          "description": "The Application Mediation Interface version"
                        },
                        "templateGlobalName": {
                          "type": "string",
                          "description": "The global name for the template"
                        }
                      },
                      "title": "MediationInfo",
                      "description": "Mediation Template mapping information"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "profileType": {
                    "type": "string",
                    "description": "The service type associated with the Mediation profile",
                    "enum": [
                      "ELAN",
                      "CLINE",
                      "ELINE",
                      "IES",
                      "L3VPN"
                    ]
                  }
                },
                "title": "MediationProfileTemplateMapping",
                "description": "Mediation profile that defines the Mediation and their template associations."
              }
            },
            "title": "Request«MediationProfileTemplateMapping»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "mediationInfos": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "mediationName": {
                            "type": "string",
                            "description": "The Application Mediation Interface name. If the mediation info is for network elements managed by NFM-P then this value must be 'NfmpService'. For MDM managed nodes, the valid values are dynamic and can be queried using the get /v4/mediation/ami-version-templates rpc."
                          },
                          "mediationVersion": {
                            "type": "string",
                            "description": "The Application Mediation Interface version"
                          },
                          "templateGlobalName": {
                            "type": "string",
                            "description": "The global name for the template"
                          }
                        },
                        "title": "MediationInfo",
                        "description": "Mediation Template mapping information"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "profileType": {
                      "type": "string",
                      "description": "The service type associated with the Mediation profile",
                      "enum": [
                        "ELAN",
                        "CLINE",
                        "ELINE",
                        "IES",
                        "L3VPN"
                      ]
                    }
                  },
                  "title": "MediationProfileTemplateMapping",
                  "description": "Mediation profile that defines the Mediation and their template associations."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«MediationProfileTemplateMapping»"
            }
          },
          "title": "ResponseData«MediationProfileTemplateMapping»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createMediationProfileMapping"
      },
      "task": true
    },
    {
      "name": "getMediationProfileMapping",
      "summary": "Find a mediation profile mapping by its unique identifier",
      "description": "Find a mediation profile mapping by its unique identifier",
      "input": [
        {
          "name": "profileId",
          "type": "string",
          "info": "profileId: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "mediationInfos": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "mediationName": {
                            "type": "string",
                            "description": "The Application Mediation Interface name. If the mediation info is for network elements managed by NFM-P then this value must be 'NfmpService'. For MDM managed nodes, the valid values are dynamic and can be queried using the get /v4/mediation/ami-version-templates rpc."
                          },
                          "mediationVersion": {
                            "type": "string",
                            "description": "The Application Mediation Interface version"
                          },
                          "templateGlobalName": {
                            "type": "string",
                            "description": "The global name for the template"
                          }
                        },
                        "title": "MediationInfo",
                        "description": "Mediation Template mapping information"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "profileType": {
                      "type": "string",
                      "description": "The service type associated with the Mediation profile",
                      "enum": [
                        "ELAN",
                        "CLINE",
                        "ELINE",
                        "IES",
                        "L3VPN"
                      ]
                    }
                  },
                  "title": "MediationProfileTemplateMapping",
                  "description": "Mediation profile that defines the Mediation and their template associations."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«MediationProfileTemplateMapping»"
            }
          },
          "title": "ResponseData«MediationProfileTemplateMapping»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getMediationProfileMapping"
      },
      "task": true
    },
    {
      "name": "updateMediationProfileMapping",
      "summary": "Update a mediation profile mapping",
      "description": "Update a mediation profile mapping",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Mediation profile that defines the Mediation and their template associations.: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"mediationInfos\": [{\"mediationName\": \"string\", \"mediationVersion\": \"string\", \"templateGlobalName\": \"string\"}], \"name\": \"string\", \"objectDescription\": \"string\", \"profileType\": \"Must be one of [ELAN, CLINE, ELINE, IES, L3VPN]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "mediationInfos": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "mediationName": {
                          "type": "string",
                          "description": "The Application Mediation Interface name. If the mediation info is for network elements managed by NFM-P then this value must be 'NfmpService'. For MDM managed nodes, the valid values are dynamic and can be queried using the get /v4/mediation/ami-version-templates rpc."
                        },
                        "mediationVersion": {
                          "type": "string",
                          "description": "The Application Mediation Interface version"
                        },
                        "templateGlobalName": {
                          "type": "string",
                          "description": "The global name for the template"
                        }
                      },
                      "title": "MediationInfo",
                      "description": "Mediation Template mapping information"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "profileType": {
                    "type": "string",
                    "description": "The service type associated with the Mediation profile",
                    "enum": [
                      "ELAN",
                      "CLINE",
                      "ELINE",
                      "IES",
                      "L3VPN"
                    ]
                  }
                },
                "title": "MediationProfileTemplateMapping",
                "description": "Mediation profile that defines the Mediation and their template associations."
              }
            },
            "title": "Request«MediationProfileTemplateMapping»"
          }
        },
        {
          "name": "profileId",
          "type": "string",
          "info": "Update a mediation profile mapping: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateMediationProfileMapping"
      },
      "task": true
    },
    {
      "name": "deleteMediationProfileMapping",
      "summary": "Delete an Mediation profile mapping",
      "description": "Delete an Mediation profile mapping",
      "input": [
        {
          "name": "profileId",
          "type": "string",
          "info": "profileId: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteMediationProfileMapping"
      },
      "task": true
    },
    {
      "name": "getAllMediationProfileMappings",
      "summary": "Query all mediation profile mappings",
      "description": "Query all mediation profile mappings",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "mediationInfos": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "mediationName": {
                              "type": "string",
                              "description": "The Application Mediation Interface name. If the mediation info is for network elements managed by NFM-P then this value must be 'NfmpService'. For MDM managed nodes, the valid values are dynamic and can be queried using the get /v4/mediation/ami-version-templates rpc."
                            },
                            "mediationVersion": {
                              "type": "string",
                              "description": "The Application Mediation Interface version"
                            },
                            "templateGlobalName": {
                              "type": "string",
                              "description": "The global name for the template"
                            }
                          },
                          "title": "MediationInfo",
                          "description": "Mediation Template mapping information"
                        }
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "profileType": {
                        "type": "string",
                        "description": "The service type associated with the Mediation profile",
                        "enum": [
                          "ELAN",
                          "CLINE",
                          "ELINE",
                          "IES",
                          "L3VPN"
                        ]
                      }
                    },
                    "title": "MediationProfileTemplateMapping",
                    "description": "Mediation profile that defines the Mediation and their template associations."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«MediationProfileTemplateMapping»»"
            }
          },
          "title": "ResponseData«List«MediationProfileTemplateMapping»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllMediationProfileMappings"
      },
      "task": true
    },
    {
      "name": "getNfmpTemplate",
      "summary": "Query NFM-P system scripts. Some of these scripts may be used for service creation or modification.",
      "description": "Query NFM-P system scripts. Some of these scripts may be used for service creation or modification.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "OPERATOR",
                      "ADMIN",
                      "USER"
                    ]
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«string»»"
            }
          },
          "title": "ResponseData«List«string»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getNfmpTemplate"
      },
      "task": true
    },
    {
      "name": "getAllOchServices",
      "summary": "Query all OCH service creation templates",
      "description": "Query all OCH service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "restoration": {
                        "type": "string",
                        "description": "Specifies the recovery technique of a path after failure.",
                        "enum": [
                          "SBR",
                          "GR",
                          "None"
                        ]
                      },
                      "reversionMode": {
                        "type": "string",
                        "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                        "enum": [
                          "softauto",
                          "auto",
                          "manual"
                        ]
                      }
                    },
                    "title": "OchServiceCreationTemplate",
                    "description": "This template is used during OCH service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OchServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«OchServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOchServices"
      },
      "task": true
    },
    {
      "name": "createOchServices",
      "summary": "Create an OCH service creation template",
      "description": "Create an OCH service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during OCH service creation: {\"data\": {\"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reversionMode\": \"Must be one of [softauto, auto, manual]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  }
                },
                "title": "OchServiceCreationTemplate",
                "description": "This template is used during OCH service creation"
              }
            },
            "title": "Request«OchServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "restoration": {
                      "type": "string",
                      "description": "Specifies the recovery technique of a path after failure.",
                      "enum": [
                        "SBR",
                        "GR",
                        "None"
                      ]
                    },
                    "reversionMode": {
                      "type": "string",
                      "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                      "enum": [
                        "softauto",
                        "auto",
                        "manual"
                      ]
                    }
                  },
                  "title": "OchServiceCreationTemplate",
                  "description": "This template is used during OCH service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OchServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«OchServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOchServices"
      },
      "task": true
    },
    {
      "name": "getOchServices",
      "summary": "Find an OCH service creation template by its unique identifier",
      "description": "Find an OCH service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "restoration": {
                      "type": "string",
                      "description": "Specifies the recovery technique of a path after failure.",
                      "enum": [
                        "SBR",
                        "GR",
                        "None"
                      ]
                    },
                    "reversionMode": {
                      "type": "string",
                      "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                      "enum": [
                        "softauto",
                        "auto",
                        "manual"
                      ]
                    }
                  },
                  "title": "OchServiceCreationTemplate",
                  "description": "This template is used during OCH service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OchServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«OchServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOchServices"
      },
      "task": true
    },
    {
      "name": "updateOchServices",
      "summary": "Modify an OCH service creation template",
      "description": "Modify an OCH service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during OCH service creation: {\"data\": {\"appId\": \"string\", \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"restoration\": \"Must be one of [SBR, GR, None]\", \"reversionMode\": \"Must be one of [softauto, auto, manual]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "restoration": {
                    "type": "string",
                    "description": "Specifies the recovery technique of a path after failure.",
                    "enum": [
                      "SBR",
                      "GR",
                      "None"
                    ]
                  },
                  "reversionMode": {
                    "type": "string",
                    "description": "Specifies how the path switches from the recovery to the the working path previously under failure condition.",
                    "enum": [
                      "softauto",
                      "auto",
                      "manual"
                    ]
                  }
                },
                "title": "OchServiceCreationTemplate",
                "description": "This template is used during OCH service creation"
              }
            },
            "title": "Request«OchServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique identifier of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOchServices"
      },
      "task": true
    },
    {
      "name": "deleteOchServices",
      "summary": "Delete an OCH service creation template",
      "description": "Delete an OCH service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOchServices"
      },
      "task": true
    },
    {
      "name": "getAllOduServices",
      "summary": "Query all ODU service creation templates",
      "description": "Query all ODU service creation templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the bandwidth required for ODU creation"
                      },
                      "bidirectional": {
                        "type": "string",
                        "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of a customer associated with service"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maxCost": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum cost. The value must be greater than or equal to 0."
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int32",
                        "description": "The maximum hops. The value must be greater than or equal to 0."
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "The maximum latency. The value must be greater than or equal to 0."
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "reverseBandwidth": {
                        "type": "integer",
                        "format": "int64",
                        "description": "Specifies the reverse bandwidth required for ODU creation"
                      }
                    },
                    "title": "OduServiceCreationTemplate",
                    "description": "This template is used during ODU service creation"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OduServiceCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«OduServiceCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOduServices"
      },
      "task": true
    },
    {
      "name": "createOduServices",
      "summary": "Create an ODU service creation template",
      "description": "Create an ODU service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during ODU service creation: {\"data\": {\"appId\": \"string\", \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"reverseBandwidth\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for ODU creation"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "reverseBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the reverse bandwidth required for ODU creation"
                  }
                },
                "title": "OduServiceCreationTemplate",
                "description": "This template is used during ODU service creation"
              }
            },
            "title": "Request«OduServiceCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for ODU creation"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "reverseBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the reverse bandwidth required for ODU creation"
                    }
                  },
                  "title": "OduServiceCreationTemplate",
                  "description": "This template is used during ODU service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OduServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«OduServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOduServices"
      },
      "task": true
    },
    {
      "name": "getOduServices",
      "summary": "Find an ODU service creation template by its unique identifier",
      "description": "Find an ODU service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the bandwidth required for ODU creation"
                    },
                    "bidirectional": {
                      "type": "string",
                      "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of a customer associated with service"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "maxCost": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum cost. The value must be greater than or equal to 0."
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The maximum hops. The value must be greater than or equal to 0."
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "The maximum latency. The value must be greater than or equal to 0."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "reverseBandwidth": {
                      "type": "integer",
                      "format": "int64",
                      "description": "Specifies the reverse bandwidth required for ODU creation"
                    }
                  },
                  "title": "OduServiceCreationTemplate",
                  "description": "This template is used during ODU service creation"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OduServiceCreationTemplate»"
            }
          },
          "title": "ResponseData«OduServiceCreationTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOduServices"
      },
      "task": true
    },
    {
      "name": "updateOduServices",
      "summary": "Modify an ODU service creation template",
      "description": "Modify an ODU service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "This template is used during ODU service creation: {\"data\": {\"appId\": \"string\", \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"customerId\": 123, \"id\": \"string\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"reverseBandwidth\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the bandwidth required for ODU creation"
                  },
                  "bidirectional": {
                    "type": "string",
                    "description": "Specifies whether a return path is required, and if so what type of return path should be determined",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of a customer associated with service"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maxCost": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum cost. The value must be greater than or equal to 0."
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int32",
                    "description": "The maximum hops. The value must be greater than or equal to 0."
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "The maximum latency. The value must be greater than or equal to 0."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "Specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency and Hops are the supported values.",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "reverseBandwidth": {
                    "type": "integer",
                    "format": "int64",
                    "description": "Specifies the reverse bandwidth required for ODU creation"
                  }
                },
                "title": "OduServiceCreationTemplate",
                "description": "This template is used during ODU service creation"
              }
            },
            "title": "Request«OduServiceCreationTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOduServices"
      },
      "task": true
    },
    {
      "name": "deleteOduServices",
      "summary": "Delete an ODU service creation template",
      "description": "Delete an ODU service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOduServices"
      },
      "task": true
    },
    {
      "name": "getAllOpticalConnectivityConstraint",
      "summary": "Query all optical connectivity constraint templates",
      "description": "Query all optical connectivity constraint templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "connectivityConstraint": {
                        "type": "object",
                        "properties": {
                          "capacity": {
                            "type": "object",
                            "properties": {
                              "capacityValue": {
                                "type": "object",
                                "description": "The Capacity (Bandwidth) values that are applicable for digital layers."
                              }
                            },
                            "title": "Capacity",
                            "description": "Capacity of service requested"
                          },
                          "connectivityDirection": {
                            "type": "string",
                            "description": "Direction",
                            "enum": [
                              "UNDEFINED_OR_UNKNOWN",
                              "BIDIRECTIONAL",
                              "UNIDIRECTIONAL"
                            ]
                          },
                          "schedule": {
                            "type": "object",
                            "properties": {
                              "timeRange": {
                                "type": "object",
                                "description": "Time range"
                              }
                            },
                            "title": "Schedule",
                            "description": "Schedule"
                          },
                          "serviceLevel": {
                            "type": "string",
                            "description": "An abstract value the meaning of which is mutually agreed - typically represents metrics as - Class of service, priority, resiliency, availability"
                          },
                          "serviceType": {
                            "type": "string",
                            "description": "Type of service",
                            "enum": [
                              "ROOTED_MULTIPOINT_CONNECTIVITY",
                              "POINT_TO_MULTIPOINT_CONNECTIVITY",
                              "MULTIPOINT_CONNECTIVITY",
                              "POINT_TO_POINT_CONNECTIVITY"
                            ]
                          }
                        },
                        "title": "ConnectivityConstraint",
                        "description": "Connectivity Service generic parameters"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      }
                    },
                    "title": "OpticalConnectivityConstraintTemplate",
                    "description": "Optical connectivity constraint template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpticalConnectivityConstraintTemplate»»"
            }
          },
          "title": "ResponseData«List«OpticalConnectivityConstraintTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOpticalConnectivityConstraint"
      },
      "task": true
    },
    {
      "name": "createOpticalConnectivityConstraint",
      "summary": "Create an optical connectivity constraint creation template",
      "description": "Create an optical connectivity constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical connectivity constraint template: {\"data\": {\"appId\": \"string\", \"connectivityConstraint\": {\"capacity\": {\"capacityValue\": \"object\"}, \"connectivityDirection\": \"Must be one of [UNDEFINED_OR_UNKNOWN, BIDIRECTIONAL, UNIDIRECTIONAL]\", \"schedule\": {\"timeRange\": \"object\"}, \"serviceLevel\": \"string\", \"serviceType\": \"Must be one of [ROOTED_MULTIPOINT_CONNECTIVITY, POINT_TO_MULTIPOINT_CONNECTIVITY, MULTIPOINT_CONNECTIVITY, POINT_TO_POINT_CONNECTIVITY]\"}, \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "connectivityConstraint": {
                    "type": "object",
                    "properties": {
                      "capacity": {
                        "type": "object",
                        "properties": {
                          "capacityValue": {
                            "type": "object",
                            "description": "The Capacity (Bandwidth) values that are applicable for digital layers."
                          }
                        },
                        "title": "Capacity",
                        "description": "Capacity of service requested"
                      },
                      "connectivityDirection": {
                        "type": "string",
                        "description": "Direction",
                        "enum": [
                          "UNDEFINED_OR_UNKNOWN",
                          "BIDIRECTIONAL",
                          "UNIDIRECTIONAL"
                        ]
                      },
                      "schedule": {
                        "type": "object",
                        "properties": {
                          "timeRange": {
                            "type": "object",
                            "description": "Time range"
                          }
                        },
                        "title": "Schedule",
                        "description": "Schedule"
                      },
                      "serviceLevel": {
                        "type": "string",
                        "description": "An abstract value the meaning of which is mutually agreed - typically represents metrics as - Class of service, priority, resiliency, availability"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "Type of service",
                        "enum": [
                          "ROOTED_MULTIPOINT_CONNECTIVITY",
                          "POINT_TO_MULTIPOINT_CONNECTIVITY",
                          "MULTIPOINT_CONNECTIVITY",
                          "POINT_TO_POINT_CONNECTIVITY"
                        ]
                      }
                    },
                    "title": "ConnectivityConstraint",
                    "description": "Connectivity Service generic parameters"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "OpticalConnectivityConstraintTemplate",
                "description": "Optical connectivity constraint template"
              }
            },
            "title": "Request«OpticalConnectivityConstraintTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "connectivityConstraint": {
                      "type": "object",
                      "properties": {
                        "capacity": {
                          "type": "object",
                          "properties": {
                            "capacityValue": {
                              "type": "object",
                              "description": "The Capacity (Bandwidth) values that are applicable for digital layers."
                            }
                          },
                          "title": "Capacity",
                          "description": "Capacity of service requested"
                        },
                        "connectivityDirection": {
                          "type": "string",
                          "description": "Direction",
                          "enum": [
                            "UNDEFINED_OR_UNKNOWN",
                            "BIDIRECTIONAL",
                            "UNIDIRECTIONAL"
                          ]
                        },
                        "schedule": {
                          "type": "object",
                          "properties": {
                            "timeRange": {
                              "type": "object",
                              "description": "Time range"
                            }
                          },
                          "title": "Schedule",
                          "description": "Schedule"
                        },
                        "serviceLevel": {
                          "type": "string",
                          "description": "An abstract value the meaning of which is mutually agreed - typically represents metrics as - Class of service, priority, resiliency, availability"
                        },
                        "serviceType": {
                          "type": "string",
                          "description": "Type of service",
                          "enum": [
                            "ROOTED_MULTIPOINT_CONNECTIVITY",
                            "POINT_TO_MULTIPOINT_CONNECTIVITY",
                            "MULTIPOINT_CONNECTIVITY",
                            "POINT_TO_POINT_CONNECTIVITY"
                          ]
                        }
                      },
                      "title": "ConnectivityConstraint",
                      "description": "Connectivity Service generic parameters"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "OpticalConnectivityConstraintTemplate",
                  "description": "Optical connectivity constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalConnectivityConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalConnectivityConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOpticalConnectivityConstraint"
      },
      "task": true
    },
    {
      "name": "getOpticalConnectivityConstraint",
      "summary": "Find an optical connectivity constraint creation template by its unique identifier",
      "description": "Find an optical connectivity constraint creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "connectivityConstraint": {
                      "type": "object",
                      "properties": {
                        "capacity": {
                          "type": "object",
                          "properties": {
                            "capacityValue": {
                              "type": "object",
                              "description": "The Capacity (Bandwidth) values that are applicable for digital layers."
                            }
                          },
                          "title": "Capacity",
                          "description": "Capacity of service requested"
                        },
                        "connectivityDirection": {
                          "type": "string",
                          "description": "Direction",
                          "enum": [
                            "UNDEFINED_OR_UNKNOWN",
                            "BIDIRECTIONAL",
                            "UNIDIRECTIONAL"
                          ]
                        },
                        "schedule": {
                          "type": "object",
                          "properties": {
                            "timeRange": {
                              "type": "object",
                              "description": "Time range"
                            }
                          },
                          "title": "Schedule",
                          "description": "Schedule"
                        },
                        "serviceLevel": {
                          "type": "string",
                          "description": "An abstract value the meaning of which is mutually agreed - typically represents metrics as - Class of service, priority, resiliency, availability"
                        },
                        "serviceType": {
                          "type": "string",
                          "description": "Type of service",
                          "enum": [
                            "ROOTED_MULTIPOINT_CONNECTIVITY",
                            "POINT_TO_MULTIPOINT_CONNECTIVITY",
                            "MULTIPOINT_CONNECTIVITY",
                            "POINT_TO_POINT_CONNECTIVITY"
                          ]
                        }
                      },
                      "title": "ConnectivityConstraint",
                      "description": "Connectivity Service generic parameters"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    }
                  },
                  "title": "OpticalConnectivityConstraintTemplate",
                  "description": "Optical connectivity constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalConnectivityConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalConnectivityConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOpticalConnectivityConstraint"
      },
      "task": true
    },
    {
      "name": "updateOpticalConnectivityConstraint",
      "summary": "Modify an optical connectivity constraint creation template",
      "description": "Modify an optical connectivity constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical connectivity constraint template: {\"data\": {\"appId\": \"string\", \"connectivityConstraint\": {\"capacity\": {\"capacityValue\": \"object\"}, \"connectivityDirection\": \"Must be one of [UNDEFINED_OR_UNKNOWN, BIDIRECTIONAL, UNIDIRECTIONAL]\", \"schedule\": {\"timeRange\": \"object\"}, \"serviceLevel\": \"string\", \"serviceType\": \"Must be one of [ROOTED_MULTIPOINT_CONNECTIVITY, POINT_TO_MULTIPOINT_CONNECTIVITY, MULTIPOINT_CONNECTIVITY, POINT_TO_POINT_CONNECTIVITY]\"}, \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "connectivityConstraint": {
                    "type": "object",
                    "properties": {
                      "capacity": {
                        "type": "object",
                        "properties": {
                          "capacityValue": {
                            "type": "object",
                            "description": "The Capacity (Bandwidth) values that are applicable for digital layers."
                          }
                        },
                        "title": "Capacity",
                        "description": "Capacity of service requested"
                      },
                      "connectivityDirection": {
                        "type": "string",
                        "description": "Direction",
                        "enum": [
                          "UNDEFINED_OR_UNKNOWN",
                          "BIDIRECTIONAL",
                          "UNIDIRECTIONAL"
                        ]
                      },
                      "schedule": {
                        "type": "object",
                        "properties": {
                          "timeRange": {
                            "type": "object",
                            "description": "Time range"
                          }
                        },
                        "title": "Schedule",
                        "description": "Schedule"
                      },
                      "serviceLevel": {
                        "type": "string",
                        "description": "An abstract value the meaning of which is mutually agreed - typically represents metrics as - Class of service, priority, resiliency, availability"
                      },
                      "serviceType": {
                        "type": "string",
                        "description": "Type of service",
                        "enum": [
                          "ROOTED_MULTIPOINT_CONNECTIVITY",
                          "POINT_TO_MULTIPOINT_CONNECTIVITY",
                          "MULTIPOINT_CONNECTIVITY",
                          "POINT_TO_POINT_CONNECTIVITY"
                        ]
                      }
                    },
                    "title": "ConnectivityConstraint",
                    "description": "Connectivity Service generic parameters"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "OpticalConnectivityConstraintTemplate",
                "description": "Optical connectivity constraint template"
              }
            },
            "title": "Request«OpticalConnectivityConstraintTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOpticalConnectivityConstraint"
      },
      "task": true
    },
    {
      "name": "deleteOpticalConnectivityConstraint",
      "summary": "Delete an optical connectivity constraint creation template",
      "description": "Delete an optical connectivity constraint creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOpticalConnectivityConstraint"
      },
      "task": true
    },
    {
      "name": "getAllOpticalConnectivityService",
      "summary": "Query all optical connectivity service templates",
      "description": "Query all optical connectivity service templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "connectivityConstraintTemplateId": {
                        "type": "string",
                        "description": "Connectivity constraint template id"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "resilienceConstraintTemplateIds": {
                        "type": "array",
                        "description": "Resilience constraint template ids",
                        "items": {
                          "type": "string"
                        }
                      },
                      "routingConstraintTemplateId": {
                        "type": "string",
                        "description": "Routing constraint template id"
                      }
                    },
                    "title": "OpticalConnectivityServiceTemplate",
                    "description": "Optical connectivity service template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpticalConnectivityServiceTemplate»»"
            }
          },
          "title": "ResponseData«List«OpticalConnectivityServiceTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOpticalConnectivityService"
      },
      "task": true
    },
    {
      "name": "createOpticalConnectivityService",
      "summary": "Create an optical connectivity service creation template",
      "description": "Create an optical connectivity service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical connectivity service template: {\"data\": {\"appId\": \"string\", \"connectivityConstraintTemplateId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"resilienceConstraintTemplateIds\": \"array\", \"routingConstraintTemplateId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "connectivityConstraintTemplateId": {
                    "type": "string",
                    "description": "Connectivity constraint template id"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "resilienceConstraintTemplateIds": {
                    "type": "array",
                    "description": "Resilience constraint template ids",
                    "items": {
                      "type": "string"
                    }
                  },
                  "routingConstraintTemplateId": {
                    "type": "string",
                    "description": "Routing constraint template id"
                  }
                },
                "title": "OpticalConnectivityServiceTemplate",
                "description": "Optical connectivity service template"
              }
            },
            "title": "Request«OpticalConnectivityServiceTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "connectivityConstraintTemplateId": {
                      "type": "string",
                      "description": "Connectivity constraint template id"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "resilienceConstraintTemplateIds": {
                      "type": "array",
                      "description": "Resilience constraint template ids",
                      "items": {
                        "type": "string"
                      }
                    },
                    "routingConstraintTemplateId": {
                      "type": "string",
                      "description": "Routing constraint template id"
                    }
                  },
                  "title": "OpticalConnectivityServiceTemplate",
                  "description": "Optical connectivity service template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalConnectivityServiceTemplate»"
            }
          },
          "title": "ResponseData«OpticalConnectivityServiceTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOpticalConnectivityService"
      },
      "task": true
    },
    {
      "name": "getOpticalConnectivityService",
      "summary": "Find an optical connectivity service creation template by its unique identifier",
      "description": "Find an optical connectivity service creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "connectivityConstraintTemplateId": {
                      "type": "string",
                      "description": "Connectivity constraint template id"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "resilienceConstraintTemplateIds": {
                      "type": "array",
                      "description": "Resilience constraint template ids",
                      "items": {
                        "type": "string"
                      }
                    },
                    "routingConstraintTemplateId": {
                      "type": "string",
                      "description": "Routing constraint template id"
                    }
                  },
                  "title": "OpticalConnectivityServiceTemplate",
                  "description": "Optical connectivity service template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalConnectivityServiceTemplate»"
            }
          },
          "title": "ResponseData«OpticalConnectivityServiceTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOpticalConnectivityService"
      },
      "task": true
    },
    {
      "name": "updateOpticalConnectivityService",
      "summary": "Modify an optical connectivity service creation template",
      "description": "Modify an optical connectivity service creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical connectivity service template: {\"data\": {\"appId\": \"string\", \"connectivityConstraintTemplateId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"resilienceConstraintTemplateIds\": \"array\", \"routingConstraintTemplateId\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "connectivityConstraintTemplateId": {
                    "type": "string",
                    "description": "Connectivity constraint template id"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "resilienceConstraintTemplateIds": {
                    "type": "array",
                    "description": "Resilience constraint template ids",
                    "items": {
                      "type": "string"
                    }
                  },
                  "routingConstraintTemplateId": {
                    "type": "string",
                    "description": "Routing constraint template id"
                  }
                },
                "title": "OpticalConnectivityServiceTemplate",
                "description": "Optical connectivity service template"
              }
            },
            "title": "Request«OpticalConnectivityServiceTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOpticalConnectivityService"
      },
      "task": true
    },
    {
      "name": "deleteOpticalConnectivityService",
      "summary": "Delete an optical connectivity service creation template",
      "description": "Delete an optical connectivity service creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOpticalConnectivityService"
      },
      "task": true
    },
    {
      "name": "getAllOpticalResilienceConstraint",
      "summary": "Query all optical resilience constraint templates",
      "description": "Query all optical resilience constraint templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "resilienceConstraint": {
                        "type": "object",
                        "properties": {
                          "holdOffTime": {
                            "type": "integer",
                            "description": "This attribute indicates the time, in milliseconds, between declaration of signal degrade or signal fail, and the initialization of the protection switching algorithm."
                          },
                          "isCoordinatedSwitchingBothEnds": {
                            "type": "boolean",
                            "description": "Is operating such that switching at both ends of each flow acorss the FC is coordinated at both ingress and egress ends."
                          },
                          "isFrozen": {
                            "type": "boolean",
                            "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state. Until the freeze is cleared, additional near-end external commands are rejected and fault condition changes and received APS messages are ignored. All administrative controls of any aspect of protection are rejected."
                          },
                          "isLockOut": {
                            "type": "boolean",
                            "description": "The resource is configured to temporarily not be available for use in the protection scheme(s) it is part of. This overrides all other protection control states including forced. If the item is locked out then it cannot be used under any circumstances. Note: Only relevant when part of a protection scheme."
                          },
                          "maxSwitchTimes": {
                            "type": "integer",
                            "description": "Used to limit the maximum swtich times. When work fault disappears, and traffic returns to the original work path, switch counter reset."
                          },
                          "resilienceType": {
                            "type": "object",
                            "properties": {
                              "protectionType": {
                                "type": "string",
                                "description": "Protection type",
                                "enum": [
                                  "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
                                  "PERMANENT_ONE_PLUS_ONE_PROTECTION",
                                  "DYNAMIC_RESTORATION",
                                  "ONE_PLUS_ONE_PROTECTION",
                                  "ONE_FOR_ONE_PROTECTION",
                                  "NO_PROTECTON",
                                  "PRE_COMPUTED_RESTORATION"
                                ]
                              },
                              "restorationPolicy": {
                                "type": "string",
                                "description": "Restoration policy",
                                "enum": [
                                  "NA",
                                  "PER_DOMAIN_RESTORATION",
                                  "END_TO_END_RESTORATION"
                                ]
                              }
                            },
                            "title": "ResilienceType",
                            "description": "Resilience type"
                          },
                          "restorationCoordinateType": {
                            "type": "string",
                            "description": " The coordination mechanism between multi-layers.",
                            "enum": [
                              "HOLD_OFF_TIME",
                              "NO_COORDINATE",
                              "WAIT_FOR_NOTIFICATION"
                            ]
                          },
                          "restorePriority": {
                            "type": "integer",
                            "description": "none"
                          },
                          "reversionMode": {
                            "type": "string",
                            "description": "Indcates whether the protection scheme is revertive or non-revertive.",
                            "enum": [
                              "NON_REVERTIVE",
                              "REVERTIVE"
                            ]
                          },
                          "waitToRevertTime": {
                            "type": "integer",
                            "description": "If the protection system is revertive, this attribute specifies the time, in minutes, to wait after a fault clears on a higher priority (preferred) resource before reverting to the preferred resource."
                          }
                        },
                        "title": "ResilienceConstraint",
                        "description": "A list of control parameters to apply to a switch."
                      }
                    },
                    "title": "OpticalResilienceConstraintTemplate",
                    "description": "Optical resilience constraint template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpticalResilienceConstraintTemplate»»"
            }
          },
          "title": "ResponseData«List«OpticalResilienceConstraintTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOpticalResilienceConstraint"
      },
      "task": true
    },
    {
      "name": "createOpticalResilienceConstraint",
      "summary": "Create an optical resilience constraint creation template",
      "description": "Create an optical resilience constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical resilience constraint template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"resilienceConstraint\": {\"holdOffTime\": 123, \"isCoordinatedSwitchingBothEnds\": \"boolean\", \"isFrozen\": \"boolean\", \"isLockOut\": \"boolean\", \"maxSwitchTimes\": 123, \"resilienceType\": {\"protectionType\": \"Must be one of [ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION, PERMANENT_ONE_PLUS_ONE_PROTECTION, DYNAMIC_RESTORATION, ONE_PLUS_ONE_PROTECTION, ONE_FOR_ONE_PROTECTION, NO_PROTECTON, PRE_COMPUTED_RESTORATION]\", \"restorationPolicy\": \"Must be one of [NA, PER_DOMAIN_RESTORATION, END_TO_END_RESTORATION]\"}, \"restorationCoordinateType\": \"Must be one of [HOLD_OFF_TIME, NO_COORDINATE, WAIT_FOR_NOTIFICATION]\", \"restorePriority\": 123, \"reversionMode\": \"Must be one of [NON_REVERTIVE, REVERTIVE]\", \"waitToRevertTime\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "resilienceConstraint": {
                    "type": "object",
                    "properties": {
                      "holdOffTime": {
                        "type": "integer",
                        "description": "This attribute indicates the time, in milliseconds, between declaration of signal degrade or signal fail, and the initialization of the protection switching algorithm."
                      },
                      "isCoordinatedSwitchingBothEnds": {
                        "type": "boolean",
                        "description": "Is operating such that switching at both ends of each flow acorss the FC is coordinated at both ingress and egress ends."
                      },
                      "isFrozen": {
                        "type": "boolean",
                        "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state. Until the freeze is cleared, additional near-end external commands are rejected and fault condition changes and received APS messages are ignored. All administrative controls of any aspect of protection are rejected."
                      },
                      "isLockOut": {
                        "type": "boolean",
                        "description": "The resource is configured to temporarily not be available for use in the protection scheme(s) it is part of. This overrides all other protection control states including forced. If the item is locked out then it cannot be used under any circumstances. Note: Only relevant when part of a protection scheme."
                      },
                      "maxSwitchTimes": {
                        "type": "integer",
                        "description": "Used to limit the maximum swtich times. When work fault disappears, and traffic returns to the original work path, switch counter reset."
                      },
                      "resilienceType": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Protection type",
                            "enum": [
                              "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
                              "PERMANENT_ONE_PLUS_ONE_PROTECTION",
                              "DYNAMIC_RESTORATION",
                              "ONE_PLUS_ONE_PROTECTION",
                              "ONE_FOR_ONE_PROTECTION",
                              "NO_PROTECTON",
                              "PRE_COMPUTED_RESTORATION"
                            ]
                          },
                          "restorationPolicy": {
                            "type": "string",
                            "description": "Restoration policy",
                            "enum": [
                              "NA",
                              "PER_DOMAIN_RESTORATION",
                              "END_TO_END_RESTORATION"
                            ]
                          }
                        },
                        "title": "ResilienceType",
                        "description": "Resilience type"
                      },
                      "restorationCoordinateType": {
                        "type": "string",
                        "description": " The coordination mechanism between multi-layers.",
                        "enum": [
                          "HOLD_OFF_TIME",
                          "NO_COORDINATE",
                          "WAIT_FOR_NOTIFICATION"
                        ]
                      },
                      "restorePriority": {
                        "type": "integer",
                        "description": "none"
                      },
                      "reversionMode": {
                        "type": "string",
                        "description": "Indcates whether the protection scheme is revertive or non-revertive.",
                        "enum": [
                          "NON_REVERTIVE",
                          "REVERTIVE"
                        ]
                      },
                      "waitToRevertTime": {
                        "type": "integer",
                        "description": "If the protection system is revertive, this attribute specifies the time, in minutes, to wait after a fault clears on a higher priority (preferred) resource before reverting to the preferred resource."
                      }
                    },
                    "title": "ResilienceConstraint",
                    "description": "A list of control parameters to apply to a switch."
                  }
                },
                "title": "OpticalResilienceConstraintTemplate",
                "description": "Optical resilience constraint template"
              }
            },
            "title": "Request«OpticalResilienceConstraintTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "resilienceConstraint": {
                      "type": "object",
                      "properties": {
                        "holdOffTime": {
                          "type": "integer",
                          "description": "This attribute indicates the time, in milliseconds, between declaration of signal degrade or signal fail, and the initialization of the protection switching algorithm."
                        },
                        "isCoordinatedSwitchingBothEnds": {
                          "type": "boolean",
                          "description": "Is operating such that switching at both ends of each flow acorss the FC is coordinated at both ingress and egress ends."
                        },
                        "isFrozen": {
                          "type": "boolean",
                          "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state. Until the freeze is cleared, additional near-end external commands are rejected and fault condition changes and received APS messages are ignored. All administrative controls of any aspect of protection are rejected."
                        },
                        "isLockOut": {
                          "type": "boolean",
                          "description": "The resource is configured to temporarily not be available for use in the protection scheme(s) it is part of. This overrides all other protection control states including forced. If the item is locked out then it cannot be used under any circumstances. Note: Only relevant when part of a protection scheme."
                        },
                        "maxSwitchTimes": {
                          "type": "integer",
                          "description": "Used to limit the maximum swtich times. When work fault disappears, and traffic returns to the original work path, switch counter reset."
                        },
                        "resilienceType": {
                          "type": "object",
                          "properties": {
                            "protectionType": {
                              "type": "string",
                              "description": "Protection type",
                              "enum": [
                                "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
                                "PERMANENT_ONE_PLUS_ONE_PROTECTION",
                                "DYNAMIC_RESTORATION",
                                "ONE_PLUS_ONE_PROTECTION",
                                "ONE_FOR_ONE_PROTECTION",
                                "NO_PROTECTON",
                                "PRE_COMPUTED_RESTORATION"
                              ]
                            },
                            "restorationPolicy": {
                              "type": "string",
                              "description": "Restoration policy",
                              "enum": [
                                "NA",
                                "PER_DOMAIN_RESTORATION",
                                "END_TO_END_RESTORATION"
                              ]
                            }
                          },
                          "title": "ResilienceType",
                          "description": "Resilience type"
                        },
                        "restorationCoordinateType": {
                          "type": "string",
                          "description": " The coordination mechanism between multi-layers.",
                          "enum": [
                            "HOLD_OFF_TIME",
                            "NO_COORDINATE",
                            "WAIT_FOR_NOTIFICATION"
                          ]
                        },
                        "restorePriority": {
                          "type": "integer",
                          "description": "none"
                        },
                        "reversionMode": {
                          "type": "string",
                          "description": "Indcates whether the protection scheme is revertive or non-revertive.",
                          "enum": [
                            "NON_REVERTIVE",
                            "REVERTIVE"
                          ]
                        },
                        "waitToRevertTime": {
                          "type": "integer",
                          "description": "If the protection system is revertive, this attribute specifies the time, in minutes, to wait after a fault clears on a higher priority (preferred) resource before reverting to the preferred resource."
                        }
                      },
                      "title": "ResilienceConstraint",
                      "description": "A list of control parameters to apply to a switch."
                    }
                  },
                  "title": "OpticalResilienceConstraintTemplate",
                  "description": "Optical resilience constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalResilienceConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalResilienceConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOpticalResilienceConstraint"
      },
      "task": true
    },
    {
      "name": "getOpticalResilienceConstraint",
      "summary": "Find an optical resilience constraint creation template by its unique identifier",
      "description": "Find an optical resilience constraint creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "resilienceConstraint": {
                      "type": "object",
                      "properties": {
                        "holdOffTime": {
                          "type": "integer",
                          "description": "This attribute indicates the time, in milliseconds, between declaration of signal degrade or signal fail, and the initialization of the protection switching algorithm."
                        },
                        "isCoordinatedSwitchingBothEnds": {
                          "type": "boolean",
                          "description": "Is operating such that switching at both ends of each flow acorss the FC is coordinated at both ingress and egress ends."
                        },
                        "isFrozen": {
                          "type": "boolean",
                          "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state. Until the freeze is cleared, additional near-end external commands are rejected and fault condition changes and received APS messages are ignored. All administrative controls of any aspect of protection are rejected."
                        },
                        "isLockOut": {
                          "type": "boolean",
                          "description": "The resource is configured to temporarily not be available for use in the protection scheme(s) it is part of. This overrides all other protection control states including forced. If the item is locked out then it cannot be used under any circumstances. Note: Only relevant when part of a protection scheme."
                        },
                        "maxSwitchTimes": {
                          "type": "integer",
                          "description": "Used to limit the maximum swtich times. When work fault disappears, and traffic returns to the original work path, switch counter reset."
                        },
                        "resilienceType": {
                          "type": "object",
                          "properties": {
                            "protectionType": {
                              "type": "string",
                              "description": "Protection type",
                              "enum": [
                                "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
                                "PERMANENT_ONE_PLUS_ONE_PROTECTION",
                                "DYNAMIC_RESTORATION",
                                "ONE_PLUS_ONE_PROTECTION",
                                "ONE_FOR_ONE_PROTECTION",
                                "NO_PROTECTON",
                                "PRE_COMPUTED_RESTORATION"
                              ]
                            },
                            "restorationPolicy": {
                              "type": "string",
                              "description": "Restoration policy",
                              "enum": [
                                "NA",
                                "PER_DOMAIN_RESTORATION",
                                "END_TO_END_RESTORATION"
                              ]
                            }
                          },
                          "title": "ResilienceType",
                          "description": "Resilience type"
                        },
                        "restorationCoordinateType": {
                          "type": "string",
                          "description": " The coordination mechanism between multi-layers.",
                          "enum": [
                            "HOLD_OFF_TIME",
                            "NO_COORDINATE",
                            "WAIT_FOR_NOTIFICATION"
                          ]
                        },
                        "restorePriority": {
                          "type": "integer",
                          "description": "none"
                        },
                        "reversionMode": {
                          "type": "string",
                          "description": "Indcates whether the protection scheme is revertive or non-revertive.",
                          "enum": [
                            "NON_REVERTIVE",
                            "REVERTIVE"
                          ]
                        },
                        "waitToRevertTime": {
                          "type": "integer",
                          "description": "If the protection system is revertive, this attribute specifies the time, in minutes, to wait after a fault clears on a higher priority (preferred) resource before reverting to the preferred resource."
                        }
                      },
                      "title": "ResilienceConstraint",
                      "description": "A list of control parameters to apply to a switch."
                    }
                  },
                  "title": "OpticalResilienceConstraintTemplate",
                  "description": "Optical resilience constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalResilienceConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalResilienceConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOpticalResilienceConstraint"
      },
      "task": true
    },
    {
      "name": "updateOpticalResilienceConstraint",
      "summary": "Modify an optical resilience constraint creation template",
      "description": "Modify an optical resilience constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical resilience constraint template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"resilienceConstraint\": {\"holdOffTime\": 123, \"isCoordinatedSwitchingBothEnds\": \"boolean\", \"isFrozen\": \"boolean\", \"isLockOut\": \"boolean\", \"maxSwitchTimes\": 123, \"resilienceType\": {\"protectionType\": \"Must be one of [ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION, PERMANENT_ONE_PLUS_ONE_PROTECTION, DYNAMIC_RESTORATION, ONE_PLUS_ONE_PROTECTION, ONE_FOR_ONE_PROTECTION, NO_PROTECTON, PRE_COMPUTED_RESTORATION]\", \"restorationPolicy\": \"Must be one of [NA, PER_DOMAIN_RESTORATION, END_TO_END_RESTORATION]\"}, \"restorationCoordinateType\": \"Must be one of [HOLD_OFF_TIME, NO_COORDINATE, WAIT_FOR_NOTIFICATION]\", \"restorePriority\": 123, \"reversionMode\": \"Must be one of [NON_REVERTIVE, REVERTIVE]\", \"waitToRevertTime\": 123}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "resilienceConstraint": {
                    "type": "object",
                    "properties": {
                      "holdOffTime": {
                        "type": "integer",
                        "description": "This attribute indicates the time, in milliseconds, between declaration of signal degrade or signal fail, and the initialization of the protection switching algorithm."
                      },
                      "isCoordinatedSwitchingBothEnds": {
                        "type": "boolean",
                        "description": "Is operating such that switching at both ends of each flow acorss the FC is coordinated at both ingress and egress ends."
                      },
                      "isFrozen": {
                        "type": "boolean",
                        "description": "Temporarily prevents any switch action to be taken and, as such, freezes the current state. Until the freeze is cleared, additional near-end external commands are rejected and fault condition changes and received APS messages are ignored. All administrative controls of any aspect of protection are rejected."
                      },
                      "isLockOut": {
                        "type": "boolean",
                        "description": "The resource is configured to temporarily not be available for use in the protection scheme(s) it is part of. This overrides all other protection control states including forced. If the item is locked out then it cannot be used under any circumstances. Note: Only relevant when part of a protection scheme."
                      },
                      "maxSwitchTimes": {
                        "type": "integer",
                        "description": "Used to limit the maximum swtich times. When work fault disappears, and traffic returns to the original work path, switch counter reset."
                      },
                      "resilienceType": {
                        "type": "object",
                        "properties": {
                          "protectionType": {
                            "type": "string",
                            "description": "Protection type",
                            "enum": [
                              "ONE_PLUS_ONE_PROTECTION_WITH_DYNAMIC_RESTORATION",
                              "PERMANENT_ONE_PLUS_ONE_PROTECTION",
                              "DYNAMIC_RESTORATION",
                              "ONE_PLUS_ONE_PROTECTION",
                              "ONE_FOR_ONE_PROTECTION",
                              "NO_PROTECTON",
                              "PRE_COMPUTED_RESTORATION"
                            ]
                          },
                          "restorationPolicy": {
                            "type": "string",
                            "description": "Restoration policy",
                            "enum": [
                              "NA",
                              "PER_DOMAIN_RESTORATION",
                              "END_TO_END_RESTORATION"
                            ]
                          }
                        },
                        "title": "ResilienceType",
                        "description": "Resilience type"
                      },
                      "restorationCoordinateType": {
                        "type": "string",
                        "description": " The coordination mechanism between multi-layers.",
                        "enum": [
                          "HOLD_OFF_TIME",
                          "NO_COORDINATE",
                          "WAIT_FOR_NOTIFICATION"
                        ]
                      },
                      "restorePriority": {
                        "type": "integer",
                        "description": "none"
                      },
                      "reversionMode": {
                        "type": "string",
                        "description": "Indcates whether the protection scheme is revertive or non-revertive.",
                        "enum": [
                          "NON_REVERTIVE",
                          "REVERTIVE"
                        ]
                      },
                      "waitToRevertTime": {
                        "type": "integer",
                        "description": "If the protection system is revertive, this attribute specifies the time, in minutes, to wait after a fault clears on a higher priority (preferred) resource before reverting to the preferred resource."
                      }
                    },
                    "title": "ResilienceConstraint",
                    "description": "A list of control parameters to apply to a switch."
                  }
                },
                "title": "OpticalResilienceConstraintTemplate",
                "description": "Optical resilience constraint template"
              }
            },
            "title": "Request«OpticalResilienceConstraintTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOpticalResilienceConstraint"
      },
      "task": true
    },
    {
      "name": "deleteOpticalResilienceConstraint",
      "summary": "Delete an optical resilience constraint creation template",
      "description": "Delete an optical resilience constraint creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOpticalResilienceConstraint"
      },
      "task": true
    },
    {
      "name": "getAllOpticalRoutingConstraint",
      "summary": "Query all optical routing constraint templates",
      "description": "Query all optical routing constraint templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "routingConstraint": {
                        "type": "object",
                        "properties": {
                          "costCharacteristic": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "costAlgorithm": {
                                  "type": "string",
                                  "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
                                },
                                "costName": {
                                  "type": "string",
                                  "description": "The cost characteristic related to some aspect of the TopologicalEntity (e.g. cost, routing weight). This aspect will be conveyed by the costName."
                                },
                                "costValue": {
                                  "type": "string",
                                  "description": "The specific cost."
                                }
                              },
                              "title": "CostCharacteristic",
                              "description": "The information for a particular cost characteristic."
                            }
                          },
                          "diversityPolicy": {
                            "type": "string",
                            "description": "Diversity policy",
                            "enum": [
                              "NODE",
                              "LINK",
                              "SRLG",
                              "SNG",
                              "SRNG"
                            ]
                          },
                          "isExclusive": {
                            "type": "boolean",
                            "description": "To distinguish if the resources are to be exclusive to the service"
                          },
                          "latencyCharacteristic": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "fixedLatencyCharacteristic": {
                                  "type": "string",
                                  "description": "A TopologicalEntity suffers delay caused by the realization of the servers (e.g. distance related; FEC encoding etc.) along with some client specific processing. This is the total average latency effect of the TopologicalEntity"
                                },
                                "jitterCharacteristic": {
                                  "type": "string",
                                  "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency. Applies to TDM systems (and not packet)."
                                },
                                "queingLatencyCharacteristic": {
                                  "type": "string",
                                  "description": "The specific queuing latency for the traffic property."
                                },
                                "trafficPropertyName": {
                                  "type": "string",
                                  "description": "The identifier of the specific traffic property to which the queuing latency applies."
                                },
                                "wanderCharacteristic": {
                                  "type": "string",
                                  "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency. Applies to TDM systems (and not packet)."
                                }
                              },
                              "title": "LatencyCharacteristic",
                              "description": "Provides information on latency characteristic for a particular stated trafficProperty."
                            }
                          },
                          "riskDiversityCharacteristic": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "riskCharacteristicName": {
                                  "type": "string",
                                  "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. For example a particular characteristic may apply to failures that are localized (e.g. to one side of a road) where as another characteristic may relate to failures that have a broader impact (e.g. both sides of a road that crosses a bridge). Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
                                },
                                "riskIdentifierList": {
                                  "type": "array",
                                  "description": "A list of the identifiers of each physical/geographic unit (with the specific risk characteristic) that is related to a segment of the TopologicalEntity.",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              },
                              "title": "RiskCharacteristic",
                              "description": "The information for a particular risk characteristic where there is a list of risk identifiers related to that characteristic."
                            }
                          },
                          "routeDirection": {
                            "type": "string",
                            "description": "Route direction",
                            "enum": [
                              "UNDEFINED_OR_UNKNOWN",
                              "BIDIRECTIONAL",
                              "UNIDIRECTIONAL"
                            ]
                          },
                          "routeObjectiveFunction": {
                            "type": "string",
                            "description": "Route objective function",
                            "enum": [
                              "LOAD_BALANCE_MAX_UNUSED_CAPACITY",
                              "MIN_WORK_ROUTE_COST",
                              "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
                              "MIN_WORK_ROUTE_HOP",
                              "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
                              "MIN_WORK_ROUTE_LATENCY",
                              "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY"
                            ]
                          }
                        },
                        "title": "RoutingConstraint",
                        "description": "Routing constraint"
                      }
                    },
                    "title": "OpticalRoutingConstraintTemplate",
                    "description": "Optical routing constraint template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«OpticalRoutingConstraintTemplate»»"
            }
          },
          "title": "ResponseData«List«OpticalRoutingConstraintTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllOpticalRoutingConstraint"
      },
      "task": true
    },
    {
      "name": "createOpticalRoutingConstraint",
      "summary": "Create an optical routing constraint creation template",
      "description": "Create an optical routing constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical routing constraint template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"routingConstraint\": {\"costCharacteristic\": [{\"costAlgorithm\": \"string\", \"costName\": \"string\", \"costValue\": \"string\"}], \"diversityPolicy\": \"Must be one of [NODE, LINK, SRLG, SNG, SRNG]\", \"isExclusive\": \"boolean\", \"latencyCharacteristic\": [{\"fixedLatencyCharacteristic\": \"string\", \"jitterCharacteristic\": \"string\", \"queingLatencyCharacteristic\": \"string\", \"trafficPropertyName\": \"string\", \"wanderCharacteristic\": \"string\"}], \"riskDiversityCharacteristic\": [{\"riskCharacteristicName\": \"string\", \"riskIdentifierList\": \"array\"}], \"routeDirection\": \"Must be one of [UNDEFINED_OR_UNKNOWN, BIDIRECTIONAL, UNIDIRECTIONAL]\", \"routeObjectiveFunction\": \"Must be one of [LOAD_BALANCE_MAX_UNUSED_CAPACITY, MIN_WORK_ROUTE_COST, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST, MIN_WORK_ROUTE_HOP, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP, MIN_WORK_ROUTE_LATENCY, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY]\"}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "routingConstraint": {
                    "type": "object",
                    "properties": {
                      "costCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "costAlgorithm": {
                              "type": "string",
                              "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
                            },
                            "costName": {
                              "type": "string",
                              "description": "The cost characteristic related to some aspect of the TopologicalEntity (e.g. cost, routing weight). This aspect will be conveyed by the costName."
                            },
                            "costValue": {
                              "type": "string",
                              "description": "The specific cost."
                            }
                          },
                          "title": "CostCharacteristic",
                          "description": "The information for a particular cost characteristic."
                        }
                      },
                      "diversityPolicy": {
                        "type": "string",
                        "description": "Diversity policy",
                        "enum": [
                          "NODE",
                          "LINK",
                          "SRLG",
                          "SNG",
                          "SRNG"
                        ]
                      },
                      "isExclusive": {
                        "type": "boolean",
                        "description": "To distinguish if the resources are to be exclusive to the service"
                      },
                      "latencyCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "fixedLatencyCharacteristic": {
                              "type": "string",
                              "description": "A TopologicalEntity suffers delay caused by the realization of the servers (e.g. distance related; FEC encoding etc.) along with some client specific processing. This is the total average latency effect of the TopologicalEntity"
                            },
                            "jitterCharacteristic": {
                              "type": "string",
                              "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency. Applies to TDM systems (and not packet)."
                            },
                            "queingLatencyCharacteristic": {
                              "type": "string",
                              "description": "The specific queuing latency for the traffic property."
                            },
                            "trafficPropertyName": {
                              "type": "string",
                              "description": "The identifier of the specific traffic property to which the queuing latency applies."
                            },
                            "wanderCharacteristic": {
                              "type": "string",
                              "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency. Applies to TDM systems (and not packet)."
                            }
                          },
                          "title": "LatencyCharacteristic",
                          "description": "Provides information on latency characteristic for a particular stated trafficProperty."
                        }
                      },
                      "riskDiversityCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "riskCharacteristicName": {
                              "type": "string",
                              "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. For example a particular characteristic may apply to failures that are localized (e.g. to one side of a road) where as another characteristic may relate to failures that have a broader impact (e.g. both sides of a road that crosses a bridge). Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
                            },
                            "riskIdentifierList": {
                              "type": "array",
                              "description": "A list of the identifiers of each physical/geographic unit (with the specific risk characteristic) that is related to a segment of the TopologicalEntity.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "RiskCharacteristic",
                          "description": "The information for a particular risk characteristic where there is a list of risk identifiers related to that characteristic."
                        }
                      },
                      "routeDirection": {
                        "type": "string",
                        "description": "Route direction",
                        "enum": [
                          "UNDEFINED_OR_UNKNOWN",
                          "BIDIRECTIONAL",
                          "UNIDIRECTIONAL"
                        ]
                      },
                      "routeObjectiveFunction": {
                        "type": "string",
                        "description": "Route objective function",
                        "enum": [
                          "LOAD_BALANCE_MAX_UNUSED_CAPACITY",
                          "MIN_WORK_ROUTE_COST",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
                          "MIN_WORK_ROUTE_HOP",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
                          "MIN_WORK_ROUTE_LATENCY",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY"
                        ]
                      }
                    },
                    "title": "RoutingConstraint",
                    "description": "Routing constraint"
                  }
                },
                "title": "OpticalRoutingConstraintTemplate",
                "description": "Optical routing constraint template"
              }
            },
            "title": "Request«OpticalRoutingConstraintTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "routingConstraint": {
                      "type": "object",
                      "properties": {
                        "costCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "costAlgorithm": {
                                "type": "string",
                                "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
                              },
                              "costName": {
                                "type": "string",
                                "description": "The cost characteristic related to some aspect of the TopologicalEntity (e.g. cost, routing weight). This aspect will be conveyed by the costName."
                              },
                              "costValue": {
                                "type": "string",
                                "description": "The specific cost."
                              }
                            },
                            "title": "CostCharacteristic",
                            "description": "The information for a particular cost characteristic."
                          }
                        },
                        "diversityPolicy": {
                          "type": "string",
                          "description": "Diversity policy",
                          "enum": [
                            "NODE",
                            "LINK",
                            "SRLG",
                            "SNG",
                            "SRNG"
                          ]
                        },
                        "isExclusive": {
                          "type": "boolean",
                          "description": "To distinguish if the resources are to be exclusive to the service"
                        },
                        "latencyCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "fixedLatencyCharacteristic": {
                                "type": "string",
                                "description": "A TopologicalEntity suffers delay caused by the realization of the servers (e.g. distance related; FEC encoding etc.) along with some client specific processing. This is the total average latency effect of the TopologicalEntity"
                              },
                              "jitterCharacteristic": {
                                "type": "string",
                                "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency. Applies to TDM systems (and not packet)."
                              },
                              "queingLatencyCharacteristic": {
                                "type": "string",
                                "description": "The specific queuing latency for the traffic property."
                              },
                              "trafficPropertyName": {
                                "type": "string",
                                "description": "The identifier of the specific traffic property to which the queuing latency applies."
                              },
                              "wanderCharacteristic": {
                                "type": "string",
                                "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency. Applies to TDM systems (and not packet)."
                              }
                            },
                            "title": "LatencyCharacteristic",
                            "description": "Provides information on latency characteristic for a particular stated trafficProperty."
                          }
                        },
                        "riskDiversityCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "riskCharacteristicName": {
                                "type": "string",
                                "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. For example a particular characteristic may apply to failures that are localized (e.g. to one side of a road) where as another characteristic may relate to failures that have a broader impact (e.g. both sides of a road that crosses a bridge). Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
                              },
                              "riskIdentifierList": {
                                "type": "array",
                                "description": "A list of the identifiers of each physical/geographic unit (with the specific risk characteristic) that is related to a segment of the TopologicalEntity.",
                                "items": {
                                  "type": "string"
                                }
                              }
                            },
                            "title": "RiskCharacteristic",
                            "description": "The information for a particular risk characteristic where there is a list of risk identifiers related to that characteristic."
                          }
                        },
                        "routeDirection": {
                          "type": "string",
                          "description": "Route direction",
                          "enum": [
                            "UNDEFINED_OR_UNKNOWN",
                            "BIDIRECTIONAL",
                            "UNIDIRECTIONAL"
                          ]
                        },
                        "routeObjectiveFunction": {
                          "type": "string",
                          "description": "Route objective function",
                          "enum": [
                            "LOAD_BALANCE_MAX_UNUSED_CAPACITY",
                            "MIN_WORK_ROUTE_COST",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
                            "MIN_WORK_ROUTE_HOP",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
                            "MIN_WORK_ROUTE_LATENCY",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY"
                          ]
                        }
                      },
                      "title": "RoutingConstraint",
                      "description": "Routing constraint"
                    }
                  },
                  "title": "OpticalRoutingConstraintTemplate",
                  "description": "Optical routing constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalRoutingConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalRoutingConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createOpticalRoutingConstraint"
      },
      "task": true
    },
    {
      "name": "getOpticalRoutingConstraint",
      "summary": "Find an optical routing constraint creation template by its unique identifier",
      "description": "Find an optical routing constraint creation template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "routingConstraint": {
                      "type": "object",
                      "properties": {
                        "costCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "costAlgorithm": {
                                "type": "string",
                                "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
                              },
                              "costName": {
                                "type": "string",
                                "description": "The cost characteristic related to some aspect of the TopologicalEntity (e.g. cost, routing weight). This aspect will be conveyed by the costName."
                              },
                              "costValue": {
                                "type": "string",
                                "description": "The specific cost."
                              }
                            },
                            "title": "CostCharacteristic",
                            "description": "The information for a particular cost characteristic."
                          }
                        },
                        "diversityPolicy": {
                          "type": "string",
                          "description": "Diversity policy",
                          "enum": [
                            "NODE",
                            "LINK",
                            "SRLG",
                            "SNG",
                            "SRNG"
                          ]
                        },
                        "isExclusive": {
                          "type": "boolean",
                          "description": "To distinguish if the resources are to be exclusive to the service"
                        },
                        "latencyCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "fixedLatencyCharacteristic": {
                                "type": "string",
                                "description": "A TopologicalEntity suffers delay caused by the realization of the servers (e.g. distance related; FEC encoding etc.) along with some client specific processing. This is the total average latency effect of the TopologicalEntity"
                              },
                              "jitterCharacteristic": {
                                "type": "string",
                                "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency. Applies to TDM systems (and not packet)."
                              },
                              "queingLatencyCharacteristic": {
                                "type": "string",
                                "description": "The specific queuing latency for the traffic property."
                              },
                              "trafficPropertyName": {
                                "type": "string",
                                "description": "The identifier of the specific traffic property to which the queuing latency applies."
                              },
                              "wanderCharacteristic": {
                                "type": "string",
                                "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency. Applies to TDM systems (and not packet)."
                              }
                            },
                            "title": "LatencyCharacteristic",
                            "description": "Provides information on latency characteristic for a particular stated trafficProperty."
                          }
                        },
                        "riskDiversityCharacteristic": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "riskCharacteristicName": {
                                "type": "string",
                                "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. For example a particular characteristic may apply to failures that are localized (e.g. to one side of a road) where as another characteristic may relate to failures that have a broader impact (e.g. both sides of a road that crosses a bridge). Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
                              },
                              "riskIdentifierList": {
                                "type": "array",
                                "description": "A list of the identifiers of each physical/geographic unit (with the specific risk characteristic) that is related to a segment of the TopologicalEntity.",
                                "items": {
                                  "type": "string"
                                }
                              }
                            },
                            "title": "RiskCharacteristic",
                            "description": "The information for a particular risk characteristic where there is a list of risk identifiers related to that characteristic."
                          }
                        },
                        "routeDirection": {
                          "type": "string",
                          "description": "Route direction",
                          "enum": [
                            "UNDEFINED_OR_UNKNOWN",
                            "BIDIRECTIONAL",
                            "UNIDIRECTIONAL"
                          ]
                        },
                        "routeObjectiveFunction": {
                          "type": "string",
                          "description": "Route objective function",
                          "enum": [
                            "LOAD_BALANCE_MAX_UNUSED_CAPACITY",
                            "MIN_WORK_ROUTE_COST",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
                            "MIN_WORK_ROUTE_HOP",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
                            "MIN_WORK_ROUTE_LATENCY",
                            "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY"
                          ]
                        }
                      },
                      "title": "RoutingConstraint",
                      "description": "Routing constraint"
                    }
                  },
                  "title": "OpticalRoutingConstraintTemplate",
                  "description": "Optical routing constraint template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«OpticalRoutingConstraintTemplate»"
            }
          },
          "title": "ResponseData«OpticalRoutingConstraintTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getOpticalRoutingConstraint"
      },
      "task": true
    },
    {
      "name": "updateOpticalRoutingConstraint",
      "summary": "Modify an optical routing constraint creation template",
      "description": "Modify an optical routing constraint creation template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Optical routing constraint template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"routingConstraint\": {\"costCharacteristic\": [{\"costAlgorithm\": \"string\", \"costName\": \"string\", \"costValue\": \"string\"}], \"diversityPolicy\": \"Must be one of [NODE, LINK, SRLG, SNG, SRNG]\", \"isExclusive\": \"boolean\", \"latencyCharacteristic\": [{\"fixedLatencyCharacteristic\": \"string\", \"jitterCharacteristic\": \"string\", \"queingLatencyCharacteristic\": \"string\", \"trafficPropertyName\": \"string\", \"wanderCharacteristic\": \"string\"}], \"riskDiversityCharacteristic\": [{\"riskCharacteristicName\": \"string\", \"riskIdentifierList\": \"array\"}], \"routeDirection\": \"Must be one of [UNDEFINED_OR_UNKNOWN, BIDIRECTIONAL, UNIDIRECTIONAL]\", \"routeObjectiveFunction\": \"Must be one of [LOAD_BALANCE_MAX_UNUSED_CAPACITY, MIN_WORK_ROUTE_COST, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST, MIN_WORK_ROUTE_HOP, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP, MIN_WORK_ROUTE_LATENCY, MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY]\"}}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "routingConstraint": {
                    "type": "object",
                    "properties": {
                      "costCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "costAlgorithm": {
                              "type": "string",
                              "description": "The cost may vary based upon some properties of the TopologicalEntity. The rules for the variation are conveyed by the costAlgorithm."
                            },
                            "costName": {
                              "type": "string",
                              "description": "The cost characteristic related to some aspect of the TopologicalEntity (e.g. cost, routing weight). This aspect will be conveyed by the costName."
                            },
                            "costValue": {
                              "type": "string",
                              "description": "The specific cost."
                            }
                          },
                          "title": "CostCharacteristic",
                          "description": "The information for a particular cost characteristic."
                        }
                      },
                      "diversityPolicy": {
                        "type": "string",
                        "description": "Diversity policy",
                        "enum": [
                          "NODE",
                          "LINK",
                          "SRLG",
                          "SNG",
                          "SRNG"
                        ]
                      },
                      "isExclusive": {
                        "type": "boolean",
                        "description": "To distinguish if the resources are to be exclusive to the service"
                      },
                      "latencyCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "fixedLatencyCharacteristic": {
                              "type": "string",
                              "description": "A TopologicalEntity suffers delay caused by the realization of the servers (e.g. distance related; FEC encoding etc.) along with some client specific processing. This is the total average latency effect of the TopologicalEntity"
                            },
                            "jitterCharacteristic": {
                              "type": "string",
                              "description": "High frequency deviation from true periodicity of a signal and therefore a small high rate of change of transfer latency. Applies to TDM systems (and not packet)."
                            },
                            "queingLatencyCharacteristic": {
                              "type": "string",
                              "description": "The specific queuing latency for the traffic property."
                            },
                            "trafficPropertyName": {
                              "type": "string",
                              "description": "The identifier of the specific traffic property to which the queuing latency applies."
                            },
                            "wanderCharacteristic": {
                              "type": "string",
                              "description": "Low frequency deviation from true periodicity of a signal and therefore a small low rate of change of transfer latency. Applies to TDM systems (and not packet)."
                            }
                          },
                          "title": "LatencyCharacteristic",
                          "description": "Provides information on latency characteristic for a particular stated trafficProperty."
                        }
                      },
                      "riskDiversityCharacteristic": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "riskCharacteristicName": {
                              "type": "string",
                              "description": "The name of the risk characteristic. The characteristic may be related to a specific degree of closeness. For example a particular characteristic may apply to failures that are localized (e.g. to one side of a road) where as another characteristic may relate to failures that have a broader impact (e.g. both sides of a road that crosses a bridge). Depending upon the importance of the traffic being routed different risk characteristics will be evaluated."
                            },
                            "riskIdentifierList": {
                              "type": "array",
                              "description": "A list of the identifiers of each physical/geographic unit (with the specific risk characteristic) that is related to a segment of the TopologicalEntity.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "RiskCharacteristic",
                          "description": "The information for a particular risk characteristic where there is a list of risk identifiers related to that characteristic."
                        }
                      },
                      "routeDirection": {
                        "type": "string",
                        "description": "Route direction",
                        "enum": [
                          "UNDEFINED_OR_UNKNOWN",
                          "BIDIRECTIONAL",
                          "UNIDIRECTIONAL"
                        ]
                      },
                      "routeObjectiveFunction": {
                        "type": "string",
                        "description": "Route objective function",
                        "enum": [
                          "LOAD_BALANCE_MAX_UNUSED_CAPACITY",
                          "MIN_WORK_ROUTE_COST",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_COST",
                          "MIN_WORK_ROUTE_HOP",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_HOP",
                          "MIN_WORK_ROUTE_LATENCY",
                          "MIN_SUM_OF_WORK_AND_PROTECTION_ROUTE_LATENCY"
                        ]
                      }
                    },
                    "title": "RoutingConstraint",
                    "description": "Routing constraint"
                  }
                },
                "title": "OpticalRoutingConstraintTemplate",
                "description": "Optical routing constraint template"
              }
            },
            "title": "Request«OpticalRoutingConstraintTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateOpticalRoutingConstraint"
      },
      "task": true
    },
    {
      "name": "deleteOpticalRoutingConstraint",
      "summary": "Delete an optical routing constraint creation template",
      "description": "Delete an optical routing constraint creation template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteOpticalRoutingConstraint"
      },
      "task": true
    },
    {
      "name": "getAllPathProfiles",
      "summary": "Query all path profile templates",
      "description": "Query all path profile templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name",
                      "profileId"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "bandwidthStrategy": {
                        "type": "string",
                        "description": "The strategy to use for LSP bandwidth in the path computation",
                        "enum": [
                          "TELEMETRY",
                          "STANDARD"
                        ]
                      },
                      "bidirection": {
                        "type": "string",
                        "description": "The Bidirectional Mode to be used in path computation",
                        "enum": [
                          "SYMMETRIC_LOOSE",
                          "NO",
                          "ASYMMETRIC_STRICT",
                          "ASYMMETRIC_LOOSE",
                          "ANY_REVERSE_ROUTE",
                          "SYMMETRIC_STRICT"
                        ]
                      },
                      "bwSplitMonitoringTime": {
                        "type": "integer",
                        "format": "int32",
                        "description": "Time in seconds to watch measured bandwidth before sending LSP split trigger"
                      },
                      "bwSplitSupported": {
                        "type": "boolean",
                        "description": "Indicates if LSP split is allowed if measured bw exceeds a given threshold"
                      },
                      "bwSplitThreshold": {
                        "type": "integer",
                        "description": "LSP bandwidth split threshold value(in kbps). If the measured bandwidth of LSP is above bwSplitThreshold value then a trigger will be sent to notify that an additional LSP should be created between the same source and destination if bwSplitSupported is set to true"
                      },
                      "bwSplitWorkflowName": {
                        "type": "string",
                        "description": "The name of workflow for LSP bandwidth split"
                      },
                      "controlRerouteStrategy": {
                        "type": "string",
                        "description": "The strategy to use when recomputing the path",
                        "enum": [
                          "STRICT",
                          "LOOSE",
                          "STANDARD"
                        ]
                      },
                      "disjoint": {
                        "type": "string",
                        "description": "The Disjoint Mode to be used in path computation",
                        "enum": [
                          "NO",
                          "NODE_STRICT_AND_SRLG",
                          "NODE_STRICT",
                          "LINK_LOOSE",
                          "LINK_STRICT_AND_SRLG",
                          "NODE_LOOSE",
                          "SRLG",
                          "LINK_STRICT"
                        ]
                      },
                      "excludeRouteObjects": {
                        "type": "array",
                        "description": "The hops to be excluded from the path",
                        "items": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        }
                      },
                      "explicitRouteStrategy": {
                        "type": "string",
                        "description": "The strategy to use when computing the explicit route objects",
                        "enum": [
                          "ECMP",
                          "STANDARD_BSID_PREFERRED",
                          "LOOSE_HOP",
                          "COMPRESSED",
                          "STANDARD",
                          "LOOSE_HOP_ANYCAST_PREFERRED",
                          "LOOSE_HOP_BSID_PREFERRED"
                        ]
                      },
                      "explicitRouteStrategyEcmpPreference": {
                        "type": "string",
                        "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO",
                        "enum": [
                          "ADJACENCY_SID",
                          "NODE_SID"
                        ]
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "includeRouteObjects": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "properties": {
                            "hopType": {
                              "type": "string",
                              "description": "The hop type, only strict or loose is supported",
                              "enum": [
                                "STRICT",
                                "LOOSE",
                                "UNKNOWN"
                              ]
                            },
                            "ipAddress": {
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "type": "object",
                                  "description": ""
                                },
                                "ipv6Address": {
                                  "type": "object",
                                  "description": ""
                                }
                              },
                              "title": "IpAddress",
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            }
                          },
                          "title": "IroHop",
                          "description": "IRO hop"
                        }
                      },
                      "latencyThreshold": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the latency threshold (in microseconds) that when exceeded, a resignal path calculation will be triggered to attempt to find a better path. If resignal cannot find a path with latency lower than or equal to this threshold, an alarm will be raised. If it is not set, the default value is -1, which means no resignal will be triggered due to latency, and no alarm will be raised. If it is set to zero, resignal path calcuation will be triggered when latency increases, but no alarm will be raised"
                      },
                      "maxCost": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The Max Cost constraint to be used in path computation"
                      },
                      "maxHops": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The Max Hops constraint to be used in path computation"
                      },
                      "maxLatency": {
                        "type": "number",
                        "format": "double",
                        "description": "Specifies the maximum latency (in microseconds) to consider for the path calculation"
                      },
                      "maxTeMetric": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The Max TE Metric constraint to be used in the path computation"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "objective": {
                        "type": "string",
                        "description": "The Metric Objective to be used in path computation",
                        "enum": [
                          "TE_METRIC",
                          "COST",
                          "DISTANCE",
                          "STAR_WEIGHT",
                          "LATENCY",
                          "HOPS"
                        ]
                      },
                      "profileId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The Profile ID of the paths to be included in path computation. NOTE: A profile with Profile ID = 0 is a global default profile that applies to ALL paths that have NO specified Profile ID. The global default profile does NOT support BiDirectional or Disjoint properties"
                      },
                      "sidProtectionStrategy": {
                        "type": "string",
                        "description": "The strategy to use when computing a path in regards to segment ID protection",
                        "enum": [
                          "UNPROTECTED_PREFERRED",
                          "UNPROTECTED_ONLY",
                          "STANDARD",
                          "PROTECTED_ONLY"
                        ]
                      }
                    },
                    "title": "PathProfileTemplate",
                    "description": "The path profile template controls computation parameters for creating paths in the network"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«PathProfileTemplate»»"
            }
          },
          "title": "ResponseData«List«PathProfileTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllPathProfiles"
      },
      "task": true
    },
    {
      "name": "createPathProfiles",
      "summary": "Create a path profile template",
      "description": "Create a path profile template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The path profile template controls computation parameters for creating paths in the network: {\"data\": {\"appId\": \"string\", \"bandwidthStrategy\": \"Must be one of [TELEMETRY, STANDARD]\", \"bidirection\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bwSplitMonitoringTime\": 123, \"bwSplitSupported\": \"boolean\", \"bwSplitThreshold\": 123, \"bwSplitWorkflowName\": \"string\", \"controlRerouteStrategy\": \"Must be one of [STRICT, LOOSE, STANDARD]\", \"disjoint\": \"Must be one of [NO, NODE_STRICT_AND_SRLG, NODE_STRICT, LINK_LOOSE, LINK_STRICT_AND_SRLG, NODE_LOOSE, SRLG, LINK_STRICT]\", \"excludeRouteObjects\": [{\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}], \"explicitRouteStrategy\": \"Must be one of [ECMP, STANDARD_BSID_PREFERRED, LOOSE_HOP, COMPRESSED, STANDARD, LOOSE_HOP_ANYCAST_PREFERRED, LOOSE_HOP_BSID_PREFERRED]\", \"explicitRouteStrategyEcmpPreference\": \"Must be one of [ADJACENCY_SID, NODE_SID]\", \"id\": \"string\", \"includeRouteObjects\": \"object\", \"latencyThreshold\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"profileId\": 123, \"sidProtectionStrategy\": \"Must be one of [UNPROTECTED_PREFERRED, UNPROTECTED_ONLY, STANDARD, PROTECTED_ONLY]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name",
                  "profileId"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidthStrategy": {
                    "type": "string",
                    "description": "The strategy to use for LSP bandwidth in the path computation",
                    "enum": [
                      "TELEMETRY",
                      "STANDARD"
                    ]
                  },
                  "bidirection": {
                    "type": "string",
                    "description": "The Bidirectional Mode to be used in path computation",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bwSplitMonitoringTime": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Time in seconds to watch measured bandwidth before sending LSP split trigger"
                  },
                  "bwSplitSupported": {
                    "type": "boolean",
                    "description": "Indicates if LSP split is allowed if measured bw exceeds a given threshold"
                  },
                  "bwSplitThreshold": {
                    "type": "integer",
                    "description": "LSP bandwidth split threshold value(in kbps). If the measured bandwidth of LSP is above bwSplitThreshold value then a trigger will be sent to notify that an additional LSP should be created between the same source and destination if bwSplitSupported is set to true"
                  },
                  "bwSplitWorkflowName": {
                    "type": "string",
                    "description": "The name of workflow for LSP bandwidth split"
                  },
                  "controlRerouteStrategy": {
                    "type": "string",
                    "description": "The strategy to use when recomputing the path",
                    "enum": [
                      "STRICT",
                      "LOOSE",
                      "STANDARD"
                    ]
                  },
                  "disjoint": {
                    "type": "string",
                    "description": "The Disjoint Mode to be used in path computation",
                    "enum": [
                      "NO",
                      "NODE_STRICT_AND_SRLG",
                      "NODE_STRICT",
                      "LINK_LOOSE",
                      "LINK_STRICT_AND_SRLG",
                      "NODE_LOOSE",
                      "SRLG",
                      "LINK_STRICT"
                    ]
                  },
                  "excludeRouteObjects": {
                    "type": "array",
                    "description": "The hops to be excluded from the path",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    }
                  },
                  "explicitRouteStrategy": {
                    "type": "string",
                    "description": "The strategy to use when computing the explicit route objects",
                    "enum": [
                      "ECMP",
                      "STANDARD_BSID_PREFERRED",
                      "LOOSE_HOP",
                      "COMPRESSED",
                      "STANDARD",
                      "LOOSE_HOP_ANYCAST_PREFERRED",
                      "LOOSE_HOP_BSID_PREFERRED"
                    ]
                  },
                  "explicitRouteStrategyEcmpPreference": {
                    "type": "string",
                    "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO",
                    "enum": [
                      "ADJACENCY_SID",
                      "NODE_SID"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "includeRouteObjects": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "properties": {
                        "hopType": {
                          "type": "string",
                          "description": "The hop type, only strict or loose is supported",
                          "enum": [
                            "STRICT",
                            "LOOSE",
                            "UNKNOWN"
                          ]
                        },
                        "ipAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        }
                      },
                      "title": "IroHop",
                      "description": "IRO hop"
                    }
                  },
                  "latencyThreshold": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the latency threshold (in microseconds) that when exceeded, a resignal path calculation will be triggered to attempt to find a better path. If resignal cannot find a path with latency lower than or equal to this threshold, an alarm will be raised. If it is not set, the default value is -1, which means no resignal will be triggered due to latency, and no alarm will be raised. If it is set to zero, resignal path calcuation will be triggered when latency increases, but no alarm will be raised"
                  },
                  "maxCost": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max Cost constraint to be used in path computation"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max Hops constraint to be used in path computation"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in microseconds) to consider for the path calculation"
                  },
                  "maxTeMetric": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max TE Metric constraint to be used in the path computation"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "The Metric Objective to be used in path computation",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "profileId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Profile ID of the paths to be included in path computation. NOTE: A profile with Profile ID = 0 is a global default profile that applies to ALL paths that have NO specified Profile ID. The global default profile does NOT support BiDirectional or Disjoint properties"
                  },
                  "sidProtectionStrategy": {
                    "type": "string",
                    "description": "The strategy to use when computing a path in regards to segment ID protection",
                    "enum": [
                      "UNPROTECTED_PREFERRED",
                      "UNPROTECTED_ONLY",
                      "STANDARD",
                      "PROTECTED_ONLY"
                    ]
                  }
                },
                "title": "PathProfileTemplate",
                "description": "The path profile template controls computation parameters for creating paths in the network"
              }
            },
            "title": "Request«PathProfileTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name",
                    "profileId"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidthStrategy": {
                      "type": "string",
                      "description": "The strategy to use for LSP bandwidth in the path computation",
                      "enum": [
                        "TELEMETRY",
                        "STANDARD"
                      ]
                    },
                    "bidirection": {
                      "type": "string",
                      "description": "The Bidirectional Mode to be used in path computation",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bwSplitMonitoringTime": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Time in seconds to watch measured bandwidth before sending LSP split trigger"
                    },
                    "bwSplitSupported": {
                      "type": "boolean",
                      "description": "Indicates if LSP split is allowed if measured bw exceeds a given threshold"
                    },
                    "bwSplitThreshold": {
                      "type": "integer",
                      "description": "LSP bandwidth split threshold value(in kbps). If the measured bandwidth of LSP is above bwSplitThreshold value then a trigger will be sent to notify that an additional LSP should be created between the same source and destination if bwSplitSupported is set to true"
                    },
                    "bwSplitWorkflowName": {
                      "type": "string",
                      "description": "The name of workflow for LSP bandwidth split"
                    },
                    "controlRerouteStrategy": {
                      "type": "string",
                      "description": "The strategy to use when recomputing the path",
                      "enum": [
                        "STRICT",
                        "LOOSE",
                        "STANDARD"
                      ]
                    },
                    "disjoint": {
                      "type": "string",
                      "description": "The Disjoint Mode to be used in path computation",
                      "enum": [
                        "NO",
                        "NODE_STRICT_AND_SRLG",
                        "NODE_STRICT",
                        "LINK_LOOSE",
                        "LINK_STRICT_AND_SRLG",
                        "NODE_LOOSE",
                        "SRLG",
                        "LINK_STRICT"
                      ]
                    },
                    "excludeRouteObjects": {
                      "type": "array",
                      "description": "The hops to be excluded from the path",
                      "items": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      }
                    },
                    "explicitRouteStrategy": {
                      "type": "string",
                      "description": "The strategy to use when computing the explicit route objects",
                      "enum": [
                        "ECMP",
                        "STANDARD_BSID_PREFERRED",
                        "LOOSE_HOP",
                        "COMPRESSED",
                        "STANDARD",
                        "LOOSE_HOP_ANYCAST_PREFERRED",
                        "LOOSE_HOP_BSID_PREFERRED"
                      ]
                    },
                    "explicitRouteStrategyEcmpPreference": {
                      "type": "string",
                      "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO",
                      "enum": [
                        "ADJACENCY_SID",
                        "NODE_SID"
                      ]
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "includeRouteObjects": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "hopType": {
                            "type": "string",
                            "description": "The hop type, only strict or loose is supported",
                            "enum": [
                              "STRICT",
                              "LOOSE",
                              "UNKNOWN"
                            ]
                          },
                          "ipAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Address": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Address": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpAddress",
                            "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                          }
                        },
                        "title": "IroHop",
                        "description": "IRO hop"
                      }
                    },
                    "latencyThreshold": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the latency threshold (in microseconds) that when exceeded, a resignal path calculation will be triggered to attempt to find a better path. If resignal cannot find a path with latency lower than or equal to this threshold, an alarm will be raised. If it is not set, the default value is -1, which means no resignal will be triggered due to latency, and no alarm will be raised. If it is set to zero, resignal path calcuation will be triggered when latency increases, but no alarm will be raised"
                    },
                    "maxCost": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max Cost constraint to be used in path computation"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max Hops constraint to be used in path computation"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in microseconds) to consider for the path calculation"
                    },
                    "maxTeMetric": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max TE Metric constraint to be used in the path computation"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "The Metric Objective to be used in path computation",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "profileId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Profile ID of the paths to be included in path computation. NOTE: A profile with Profile ID = 0 is a global default profile that applies to ALL paths that have NO specified Profile ID. The global default profile does NOT support BiDirectional or Disjoint properties"
                    },
                    "sidProtectionStrategy": {
                      "type": "string",
                      "description": "The strategy to use when computing a path in regards to segment ID protection",
                      "enum": [
                        "UNPROTECTED_PREFERRED",
                        "UNPROTECTED_ONLY",
                        "STANDARD",
                        "PROTECTED_ONLY"
                      ]
                    }
                  },
                  "title": "PathProfileTemplate",
                  "description": "The path profile template controls computation parameters for creating paths in the network"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«PathProfileTemplate»"
            }
          },
          "title": "ResponseData«PathProfileTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createPathProfiles"
      },
      "task": true
    },
    {
      "name": "getPathProfiles",
      "summary": "Find a path profile template by its unique identifier",
      "description": "Find a path profile template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name",
                    "profileId"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "bandwidthStrategy": {
                      "type": "string",
                      "description": "The strategy to use for LSP bandwidth in the path computation",
                      "enum": [
                        "TELEMETRY",
                        "STANDARD"
                      ]
                    },
                    "bidirection": {
                      "type": "string",
                      "description": "The Bidirectional Mode to be used in path computation",
                      "enum": [
                        "SYMMETRIC_LOOSE",
                        "NO",
                        "ASYMMETRIC_STRICT",
                        "ASYMMETRIC_LOOSE",
                        "ANY_REVERSE_ROUTE",
                        "SYMMETRIC_STRICT"
                      ]
                    },
                    "bwSplitMonitoringTime": {
                      "type": "integer",
                      "format": "int32",
                      "description": "Time in seconds to watch measured bandwidth before sending LSP split trigger"
                    },
                    "bwSplitSupported": {
                      "type": "boolean",
                      "description": "Indicates if LSP split is allowed if measured bw exceeds a given threshold"
                    },
                    "bwSplitThreshold": {
                      "type": "integer",
                      "description": "LSP bandwidth split threshold value(in kbps). If the measured bandwidth of LSP is above bwSplitThreshold value then a trigger will be sent to notify that an additional LSP should be created between the same source and destination if bwSplitSupported is set to true"
                    },
                    "bwSplitWorkflowName": {
                      "type": "string",
                      "description": "The name of workflow for LSP bandwidth split"
                    },
                    "controlRerouteStrategy": {
                      "type": "string",
                      "description": "The strategy to use when recomputing the path",
                      "enum": [
                        "STRICT",
                        "LOOSE",
                        "STANDARD"
                      ]
                    },
                    "disjoint": {
                      "type": "string",
                      "description": "The Disjoint Mode to be used in path computation",
                      "enum": [
                        "NO",
                        "NODE_STRICT_AND_SRLG",
                        "NODE_STRICT",
                        "LINK_LOOSE",
                        "LINK_STRICT_AND_SRLG",
                        "NODE_LOOSE",
                        "SRLG",
                        "LINK_STRICT"
                      ]
                    },
                    "excludeRouteObjects": {
                      "type": "array",
                      "description": "The hops to be excluded from the path",
                      "items": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      }
                    },
                    "explicitRouteStrategy": {
                      "type": "string",
                      "description": "The strategy to use when computing the explicit route objects",
                      "enum": [
                        "ECMP",
                        "STANDARD_BSID_PREFERRED",
                        "LOOSE_HOP",
                        "COMPRESSED",
                        "STANDARD",
                        "LOOSE_HOP_ANYCAST_PREFERRED",
                        "LOOSE_HOP_BSID_PREFERRED"
                      ]
                    },
                    "explicitRouteStrategyEcmpPreference": {
                      "type": "string",
                      "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO",
                      "enum": [
                        "ADJACENCY_SID",
                        "NODE_SID"
                      ]
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "includeRouteObjects": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "properties": {
                          "hopType": {
                            "type": "string",
                            "description": "The hop type, only strict or loose is supported",
                            "enum": [
                              "STRICT",
                              "LOOSE",
                              "UNKNOWN"
                            ]
                          },
                          "ipAddress": {
                            "type": "object",
                            "properties": {
                              "ipv4Address": {
                                "type": "object",
                                "description": ""
                              },
                              "ipv6Address": {
                                "type": "object",
                                "description": ""
                              }
                            },
                            "title": "IpAddress",
                            "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                          }
                        },
                        "title": "IroHop",
                        "description": "IRO hop"
                      }
                    },
                    "latencyThreshold": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the latency threshold (in microseconds) that when exceeded, a resignal path calculation will be triggered to attempt to find a better path. If resignal cannot find a path with latency lower than or equal to this threshold, an alarm will be raised. If it is not set, the default value is -1, which means no resignal will be triggered due to latency, and no alarm will be raised. If it is set to zero, resignal path calcuation will be triggered when latency increases, but no alarm will be raised"
                    },
                    "maxCost": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max Cost constraint to be used in path computation"
                    },
                    "maxHops": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max Hops constraint to be used in path computation"
                    },
                    "maxLatency": {
                      "type": "number",
                      "format": "double",
                      "description": "Specifies the maximum latency (in microseconds) to consider for the path calculation"
                    },
                    "maxTeMetric": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Max TE Metric constraint to be used in the path computation"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "objective": {
                      "type": "string",
                      "description": "The Metric Objective to be used in path computation",
                      "enum": [
                        "TE_METRIC",
                        "COST",
                        "DISTANCE",
                        "STAR_WEIGHT",
                        "LATENCY",
                        "HOPS"
                      ]
                    },
                    "profileId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The Profile ID of the paths to be included in path computation. NOTE: A profile with Profile ID = 0 is a global default profile that applies to ALL paths that have NO specified Profile ID. The global default profile does NOT support BiDirectional or Disjoint properties"
                    },
                    "sidProtectionStrategy": {
                      "type": "string",
                      "description": "The strategy to use when computing a path in regards to segment ID protection",
                      "enum": [
                        "UNPROTECTED_PREFERRED",
                        "UNPROTECTED_ONLY",
                        "STANDARD",
                        "PROTECTED_ONLY"
                      ]
                    }
                  },
                  "title": "PathProfileTemplate",
                  "description": "The path profile template controls computation parameters for creating paths in the network"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«PathProfileTemplate»"
            }
          },
          "title": "ResponseData«PathProfileTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPathProfiles"
      },
      "task": true
    },
    {
      "name": "updatePathProfiles",
      "summary": "Update a path profile template",
      "description": "Update a path profile template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The path profile template controls computation parameters for creating paths in the network: {\"data\": {\"appId\": \"string\", \"bandwidthStrategy\": \"Must be one of [TELEMETRY, STANDARD]\", \"bidirection\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"bwSplitMonitoringTime\": 123, \"bwSplitSupported\": \"boolean\", \"bwSplitThreshold\": 123, \"bwSplitWorkflowName\": \"string\", \"controlRerouteStrategy\": \"Must be one of [STRICT, LOOSE, STANDARD]\", \"disjoint\": \"Must be one of [NO, NODE_STRICT_AND_SRLG, NODE_STRICT, LINK_LOOSE, LINK_STRICT_AND_SRLG, NODE_LOOSE, SRLG, LINK_STRICT]\", \"excludeRouteObjects\": [{\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}], \"explicitRouteStrategy\": \"Must be one of [ECMP, STANDARD_BSID_PREFERRED, LOOSE_HOP, COMPRESSED, STANDARD, LOOSE_HOP_ANYCAST_PREFERRED, LOOSE_HOP_BSID_PREFERRED]\", \"explicitRouteStrategyEcmpPreference\": \"Must be one of [ADJACENCY_SID, NODE_SID]\", \"id\": \"string\", \"includeRouteObjects\": \"object\", \"latencyThreshold\": 123, \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"name\": \"string\", \"objectDescription\": \"string\", \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"profileId\": 123, \"sidProtectionStrategy\": \"Must be one of [UNPROTECTED_PREFERRED, UNPROTECTED_ONLY, STANDARD, PROTECTED_ONLY]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name",
                  "profileId"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "bandwidthStrategy": {
                    "type": "string",
                    "description": "The strategy to use for LSP bandwidth in the path computation",
                    "enum": [
                      "TELEMETRY",
                      "STANDARD"
                    ]
                  },
                  "bidirection": {
                    "type": "string",
                    "description": "The Bidirectional Mode to be used in path computation",
                    "enum": [
                      "SYMMETRIC_LOOSE",
                      "NO",
                      "ASYMMETRIC_STRICT",
                      "ASYMMETRIC_LOOSE",
                      "ANY_REVERSE_ROUTE",
                      "SYMMETRIC_STRICT"
                    ]
                  },
                  "bwSplitMonitoringTime": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Time in seconds to watch measured bandwidth before sending LSP split trigger"
                  },
                  "bwSplitSupported": {
                    "type": "boolean",
                    "description": "Indicates if LSP split is allowed if measured bw exceeds a given threshold"
                  },
                  "bwSplitThreshold": {
                    "type": "integer",
                    "description": "LSP bandwidth split threshold value(in kbps). If the measured bandwidth of LSP is above bwSplitThreshold value then a trigger will be sent to notify that an additional LSP should be created between the same source and destination if bwSplitSupported is set to true"
                  },
                  "bwSplitWorkflowName": {
                    "type": "string",
                    "description": "The name of workflow for LSP bandwidth split"
                  },
                  "controlRerouteStrategy": {
                    "type": "string",
                    "description": "The strategy to use when recomputing the path",
                    "enum": [
                      "STRICT",
                      "LOOSE",
                      "STANDARD"
                    ]
                  },
                  "disjoint": {
                    "type": "string",
                    "description": "The Disjoint Mode to be used in path computation",
                    "enum": [
                      "NO",
                      "NODE_STRICT_AND_SRLG",
                      "NODE_STRICT",
                      "LINK_LOOSE",
                      "LINK_STRICT_AND_SRLG",
                      "NODE_LOOSE",
                      "SRLG",
                      "LINK_STRICT"
                    ]
                  },
                  "excludeRouteObjects": {
                    "type": "array",
                    "description": "The hops to be excluded from the path",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    }
                  },
                  "explicitRouteStrategy": {
                    "type": "string",
                    "description": "The strategy to use when computing the explicit route objects",
                    "enum": [
                      "ECMP",
                      "STANDARD_BSID_PREFERRED",
                      "LOOSE_HOP",
                      "COMPRESSED",
                      "STANDARD",
                      "LOOSE_HOP_ANYCAST_PREFERRED",
                      "LOOSE_HOP_BSID_PREFERRED"
                    ]
                  },
                  "explicitRouteStrategyEcmpPreference": {
                    "type": "string",
                    "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO",
                    "enum": [
                      "ADJACENCY_SID",
                      "NODE_SID"
                    ]
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "includeRouteObjects": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "properties": {
                        "hopType": {
                          "type": "string",
                          "description": "The hop type, only strict or loose is supported",
                          "enum": [
                            "STRICT",
                            "LOOSE",
                            "UNKNOWN"
                          ]
                        },
                        "ipAddress": {
                          "type": "object",
                          "properties": {
                            "ipv4Address": {
                              "type": "object",
                              "description": ""
                            },
                            "ipv6Address": {
                              "type": "object",
                              "description": ""
                            }
                          },
                          "title": "IpAddress",
                          "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                        }
                      },
                      "title": "IroHop",
                      "description": "IRO hop"
                    }
                  },
                  "latencyThreshold": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the latency threshold (in microseconds) that when exceeded, a resignal path calculation will be triggered to attempt to find a better path. If resignal cannot find a path with latency lower than or equal to this threshold, an alarm will be raised. If it is not set, the default value is -1, which means no resignal will be triggered due to latency, and no alarm will be raised. If it is set to zero, resignal path calcuation will be triggered when latency increases, but no alarm will be raised"
                  },
                  "maxCost": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max Cost constraint to be used in path computation"
                  },
                  "maxHops": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max Hops constraint to be used in path computation"
                  },
                  "maxLatency": {
                    "type": "number",
                    "format": "double",
                    "description": "Specifies the maximum latency (in microseconds) to consider for the path calculation"
                  },
                  "maxTeMetric": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Max TE Metric constraint to be used in the path computation"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "objective": {
                    "type": "string",
                    "description": "The Metric Objective to be used in path computation",
                    "enum": [
                      "TE_METRIC",
                      "COST",
                      "DISTANCE",
                      "STAR_WEIGHT",
                      "LATENCY",
                      "HOPS"
                    ]
                  },
                  "profileId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The Profile ID of the paths to be included in path computation. NOTE: A profile with Profile ID = 0 is a global default profile that applies to ALL paths that have NO specified Profile ID. The global default profile does NOT support BiDirectional or Disjoint properties"
                  },
                  "sidProtectionStrategy": {
                    "type": "string",
                    "description": "The strategy to use when computing a path in regards to segment ID protection",
                    "enum": [
                      "UNPROTECTED_PREFERRED",
                      "UNPROTECTED_ONLY",
                      "STANDARD",
                      "PROTECTED_ONLY"
                    ]
                  }
                },
                "title": "PathProfileTemplate",
                "description": "The path profile template controls computation parameters for creating paths in the network"
              }
            },
            "title": "Request«PathProfileTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updatePathProfiles"
      },
      "task": true
    },
    {
      "name": "deletePathProfiles",
      "summary": "Delete an existing path profile template",
      "description": "Delete an existing path profile template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deletePathProfiles"
      },
      "task": true
    },
    {
      "name": "getAllQos",
      "summary": "Query all QoS templates",
      "description": "Query all QoS templates",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "egressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "EgressParam",
                        "description": "Egress Qos policy parameters associated with an endpoint."
                      },
                      "egressQueueOverride": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "ingressParam": {
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "type": "object",
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "title": "Tier1Scheduler",
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "title": "IngressParam",
                        "description": "Ingress Qos policy parameters associated with an endpoint."
                      },
                      "ingressQueueOverride": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "format": "int64",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Maximum Burst Size in KB. "
                            },
                            "pir": {
                              "type": "integer",
                              "format": "int64",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "enum": [
                                "Policer",
                                "Queue"
                              ]
                            },
                            "rateType": {
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "enum": [
                                "kbps",
                                "percent"
                              ]
                            }
                          },
                          "title": "Queue",
                          "description": "The parameters of a queue"
                        }
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "qosProfile": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The ID of the default Generic QoS profile associated with the quality of service template"
                      }
                    },
                    "title": "QosTemplate",
                    "description": "Qos template that defines cir & pir. Also used to template certain endpoint values"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«QosTemplate»»"
            }
          },
          "title": "ResponseData«List«QosTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllQos"
      },
      "task": true
    },
    {
      "name": "createQos",
      "summary": "Create a QoS template",
      "description": "Create a QoS template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Qos template that defines cir & pir. Also used to template certain endpoint values: {\"data\": {\"appId\": \"string\", \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"egressQueueOverride\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"id\": \"string\", \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"ingressQueueOverride\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"name\": \"string\", \"objectDescription\": \"string\", \"qosProfile\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "egressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "EgressParam",
                    "description": "Egress Qos policy parameters associated with an endpoint."
                  },
                  "egressQueueOverride": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "ingressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "IngressParam",
                    "description": "Ingress Qos policy parameters associated with an endpoint."
                  },
                  "ingressQueueOverride": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "qosProfile": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of the default Generic QoS profile associated with the quality of service template"
                  }
                },
                "title": "QosTemplate",
                "description": "Qos template that defines cir & pir. Also used to template certain endpoint values"
              }
            },
            "title": "Request«QosTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "egressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "EgressParam",
                      "description": "Egress Qos policy parameters associated with an endpoint."
                    },
                    "egressQueueOverride": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "ingressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "IngressParam",
                      "description": "Ingress Qos policy parameters associated with an endpoint."
                    },
                    "ingressQueueOverride": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "qosProfile": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of the default Generic QoS profile associated with the quality of service template"
                    }
                  },
                  "title": "QosTemplate",
                  "description": "Qos template that defines cir & pir. Also used to template certain endpoint values"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«QosTemplate»"
            }
          },
          "title": "ResponseData«QosTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createQos"
      },
      "task": true
    },
    {
      "name": "getAllQosPolicies",
      "summary": "Query all QoS policies",
      "description": "Query all QoS policies",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ipAddress": {
                        "type": "string",
                        "description": "The IP address of the network element"
                      },
                      "policyIdentifiers": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "description": {
                              "type": "string",
                              "description": "A textual description of the identifier."
                            },
                            "identifier": {
                              "type": "string",
                              "description": "The identifier of the policy."
                            },
                            "policyType": {
                              "type": "string",
                              "description": "The type of the policy."
                            }
                          },
                          "title": "PolicyIdentifier",
                          "description": "The parameters of a policy identifier"
                        }
                      },
                      "siteName": {
                        "type": "string",
                        "description": "The name of the network element site"
                      }
                    },
                    "title": "NePolicyIdentifier",
                    "description": "The list of policy identifiers per NE"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«NePolicyIdentifier»»"
            }
          },
          "title": "ResponseData«List«NePolicyIdentifier»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllQosPolicies"
      },
      "task": true
    },
    {
      "name": "getQosPolicies",
      "summary": "Query all QoS policies of the provided network element",
      "description": "Query all QoS policies of the provided network element",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "description": {
                        "type": "string",
                        "description": "A textual description of the identifier."
                      },
                      "identifier": {
                        "type": "string",
                        "description": "The identifier of the policy."
                      },
                      "policyType": {
                        "type": "string",
                        "description": "The type of the policy."
                      }
                    },
                    "title": "PolicyIdentifier",
                    "description": "The parameters of a policy identifier"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«PolicyIdentifier»»"
            }
          },
          "title": "ResponseData«List«PolicyIdentifier»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getQosPolicies"
      },
      "task": true
    },
    {
      "name": "getQos",
      "summary": "Find a QoS template by its unique identifier",
      "description": "Find a QoS template by its unique identifier",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "egressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "EgressParam",
                      "description": "Egress Qos policy parameters associated with an endpoint."
                    },
                    "egressQueueOverride": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "ingressParam": {
                      "type": "object",
                      "properties": {
                        "tier1Scheduler": {
                          "type": "object",
                          "properties": {
                            "scheduler": {
                              "type": "object",
                              "description": "The parameters of a scheduler"
                            }
                          },
                          "title": "Tier1Scheduler",
                          "description": "Tier1 Ingress QoS scheduler parameters"
                        }
                      },
                      "title": "IngressParam",
                      "description": "Ingress Qos policy parameters associated with an endpoint."
                    },
                    "ingressQueueOverride": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Burst Size in KB."
                          },
                          "cir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "id": {
                            "type": "integer",
                            "format": "int64",
                            "description": "ID of the queue"
                          },
                          "mbs": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Maximum Burst Size in KB. "
                          },
                          "pir": {
                            "type": "integer",
                            "format": "int64",
                            "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                          },
                          "queueType": {
                            "type": "string",
                            "description": "The type of the queue override. Default is Queue.",
                            "enum": [
                              "Policer",
                              "Queue"
                            ]
                          },
                          "rateType": {
                            "type": "string",
                            "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                            "enum": [
                              "kbps",
                              "percent"
                            ]
                          }
                        },
                        "title": "Queue",
                        "description": "The parameters of a queue"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "qosProfile": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The ID of the default Generic QoS profile associated with the quality of service template"
                    }
                  },
                  "title": "QosTemplate",
                  "description": "Qos template that defines cir & pir. Also used to template certain endpoint values"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«QosTemplate»"
            }
          },
          "title": "ResponseData«QosTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getQos"
      },
      "task": true
    },
    {
      "name": "updateQos",
      "summary": "Modify a QoS template",
      "description": "Modify a QoS template",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Qos template that defines cir & pir. Also used to template certain endpoint values: {\"data\": {\"appId\": \"string\", \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"egressQueueOverride\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"id\": \"string\", \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": \"object\"}}, \"ingressQueueOverride\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"name\": \"string\", \"objectDescription\": \"string\", \"qosProfile\": 123}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "egressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "EgressParam",
                    "description": "Egress Qos policy parameters associated with an endpoint."
                  },
                  "egressQueueOverride": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "ingressParam": {
                    "type": "object",
                    "properties": {
                      "tier1Scheduler": {
                        "type": "object",
                        "properties": {
                          "scheduler": {
                            "type": "object",
                            "description": "The parameters of a scheduler"
                          }
                        },
                        "title": "Tier1Scheduler",
                        "description": "Tier1 Ingress QoS scheduler parameters"
                      }
                    },
                    "title": "IngressParam",
                    "description": "Ingress Qos policy parameters associated with an endpoint."
                  },
                  "ingressQueueOverride": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "cbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Burst Size in KB."
                        },
                        "cir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "id": {
                          "type": "integer",
                          "format": "int64",
                          "description": "ID of the queue"
                        },
                        "mbs": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Maximum Burst Size in KB. "
                        },
                        "pir": {
                          "type": "integer",
                          "format": "int64",
                          "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                        },
                        "queueType": {
                          "type": "string",
                          "description": "The type of the queue override. Default is Queue.",
                          "enum": [
                            "Policer",
                            "Queue"
                          ]
                        },
                        "rateType": {
                          "type": "string",
                          "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                          "enum": [
                            "kbps",
                            "percent"
                          ]
                        }
                      },
                      "title": "Queue",
                      "description": "The parameters of a queue"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "qosProfile": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The ID of the default Generic QoS profile associated with the quality of service template"
                  }
                },
                "title": "QosTemplate",
                "description": "Qos template that defines cir & pir. Also used to template certain endpoint values"
              }
            },
            "title": "Request«QosTemplate»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique identifier of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateQos"
      },
      "task": true
    },
    {
      "name": "deleteQos",
      "summary": "Delete a QoS template",
      "description": "Delete a QoS template",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "templateId: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteQos"
      },
      "task": true
    },
    {
      "name": "getAllRouterIdSystemIdMappings",
      "summary": "Query all router ID system ID mapping policy",
      "description": "Query all router ID system ID mapping policy",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name",
                      "systemId"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "pccAddress": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "routerInfos": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "asNumber",
                            "bgpLsId",
                            "networkIdentifier",
                            "routerId"
                          ],
                          "properties": {
                            "asNumber": {
                              "type": "object",
                              "properties": {
                                "uint32": {
                                  "type": "integer",
                                  "format": "int64"
                                }
                              },
                              "title": "AsNumber",
                              "description": "The as-number type represents autonomous system numbers which identify an Autonomous System (AS). An AS is a set of routers under a single technical administration, using an interior gateway protocol and common metrics to route packets within the AS, and using an exterior gateway protocol to route packets to other ASes. IANA maintains the AS number space and has delegated large parts to the regional registries. Autonomous system numbers were originally limited to 16 bits. BGP extensions have enlarged the autonomous system number space to 32 bits. This type therefore uses an uint32 base type without a range restriction in order to support a larger autonomous system number space. In the value set and its semantics, this type is equivalent to the InetAutonomousSystemNumber textual convention of the SMIv2."
                            },
                            "bgpLsId": {
                              "type": "integer",
                              "format": "int64",
                              "description": "BGP-LS topology identifier."
                            },
                            "dcIdentifier": {
                              "type": "integer",
                              "format": "int64",
                              "description": "Identifier used when resources correspond to datacenter entities. Applicable to routers defined and/or discovered with protocol=STATIC. Keep as zero by default if not defining DC entities."
                            },
                            "networkIdentifier": {
                              "type": "object",
                              "properties": {
                                "uint32": {
                                  "type": "integer",
                                  "format": "int64"
                                }
                              },
                              "title": "NetworkIdentifierType",
                              "description": "Network identifier."
                            },
                            "protocol": {
                              "type": "string",
                              "description": "The protocol which IGP router is using",
                              "enum": [
                                "OSPFv2",
                                "ISIS",
                                "BGP",
                                "ANY",
                                "STATIC"
                              ]
                            },
                            "routerId": {
                              "type": "object",
                              "properties": {
                                "string": {
                                  "type": "string"
                                }
                              },
                              "title": "DottedQuad",
                              "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                            }
                          },
                          "title": "RouterInfo",
                          "description": "Object that defines router information."
                        }
                      },
                      "systemId": {
                        "type": "object",
                        "properties": {
                          "ipv4Address": {
                            "type": "object",
                            "description": ""
                          },
                          "ipv6Address": {
                            "type": "object",
                            "description": ""
                          }
                        },
                        "title": "IpAddress",
                        "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                      },
                      "systemName": {
                        "type": "string",
                        "description": "The system name."
                      }
                    },
                    "title": "RouterIdSystemIdMapping",
                    "description": "Policy template that defines system ID and router ID mapping."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«RouterIdSystemIdMapping»»"
            }
          },
          "title": "ResponseData«List«RouterIdSystemIdMapping»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllRouterIdSystemIdMappings"
      },
      "task": true
    },
    {
      "name": "createRouterIdSystemIdMapping",
      "summary": "Create a router ID system ID mapping policy",
      "description": "Create a router ID system ID mapping policy",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Policy template that defines system ID and router ID mapping.: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"pccAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"routerInfos\": [{\"asNumber\": {\"uint32\": 123}, \"bgpLsId\": 123, \"dcIdentifier\": 123, \"networkIdentifier\": {\"uint32\": 123}, \"protocol\": \"Must be one of [OSPFv2, ISIS, BGP, ANY, STATIC]\", \"routerId\": {\"string\": \"string\"}}], \"systemId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"systemName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name",
                  "systemId"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "pccAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "routerInfos": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "asNumber",
                        "bgpLsId",
                        "networkIdentifier",
                        "routerId"
                      ],
                      "properties": {
                        "asNumber": {
                          "type": "object",
                          "properties": {
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "AsNumber",
                          "description": "The as-number type represents autonomous system numbers which identify an Autonomous System (AS). An AS is a set of routers under a single technical administration, using an interior gateway protocol and common metrics to route packets within the AS, and using an exterior gateway protocol to route packets to other ASes. IANA maintains the AS number space and has delegated large parts to the regional registries. Autonomous system numbers were originally limited to 16 bits. BGP extensions have enlarged the autonomous system number space to 32 bits. This type therefore uses an uint32 base type without a range restriction in order to support a larger autonomous system number space. In the value set and its semantics, this type is equivalent to the InetAutonomousSystemNumber textual convention of the SMIv2."
                        },
                        "bgpLsId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "BGP-LS topology identifier."
                        },
                        "dcIdentifier": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Identifier used when resources correspond to datacenter entities. Applicable to routers defined and/or discovered with protocol=STATIC. Keep as zero by default if not defining DC entities."
                        },
                        "networkIdentifier": {
                          "type": "object",
                          "properties": {
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "NetworkIdentifierType",
                          "description": "Network identifier."
                        },
                        "protocol": {
                          "type": "string",
                          "description": "The protocol which IGP router is using",
                          "enum": [
                            "OSPFv2",
                            "ISIS",
                            "BGP",
                            "ANY",
                            "STATIC"
                          ]
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "DottedQuad",
                          "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                        }
                      },
                      "title": "RouterInfo",
                      "description": "Object that defines router information."
                    }
                  },
                  "systemId": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "systemName": {
                    "type": "string",
                    "description": "The system name."
                  }
                },
                "title": "RouterIdSystemIdMapping",
                "description": "Policy template that defines system ID and router ID mapping."
              }
            },
            "title": "Request«RouterIdSystemIdMapping»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name",
                    "systemId"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "pccAddress": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "routerInfos": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "asNumber",
                          "bgpLsId",
                          "networkIdentifier",
                          "routerId"
                        ],
                        "properties": {
                          "asNumber": {
                            "type": "object",
                            "properties": {
                              "uint32": {
                                "type": "integer",
                                "format": "int64"
                              }
                            },
                            "title": "AsNumber",
                            "description": "The as-number type represents autonomous system numbers which identify an Autonomous System (AS). An AS is a set of routers under a single technical administration, using an interior gateway protocol and common metrics to route packets within the AS, and using an exterior gateway protocol to route packets to other ASes. IANA maintains the AS number space and has delegated large parts to the regional registries. Autonomous system numbers were originally limited to 16 bits. BGP extensions have enlarged the autonomous system number space to 32 bits. This type therefore uses an uint32 base type without a range restriction in order to support a larger autonomous system number space. In the value set and its semantics, this type is equivalent to the InetAutonomousSystemNumber textual convention of the SMIv2."
                          },
                          "bgpLsId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "BGP-LS topology identifier."
                          },
                          "dcIdentifier": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Identifier used when resources correspond to datacenter entities. Applicable to routers defined and/or discovered with protocol=STATIC. Keep as zero by default if not defining DC entities."
                          },
                          "networkIdentifier": {
                            "type": "object",
                            "properties": {
                              "uint32": {
                                "type": "integer",
                                "format": "int64"
                              }
                            },
                            "title": "NetworkIdentifierType",
                            "description": "Network identifier."
                          },
                          "protocol": {
                            "type": "string",
                            "description": "The protocol which IGP router is using",
                            "enum": [
                              "OSPFv2",
                              "ISIS",
                              "BGP",
                              "ANY",
                              "STATIC"
                            ]
                          },
                          "routerId": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "DottedQuad",
                            "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                          }
                        },
                        "title": "RouterInfo",
                        "description": "Object that defines router information."
                      }
                    },
                    "systemId": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "systemName": {
                      "type": "string",
                      "description": "The system name."
                    }
                  },
                  "title": "RouterIdSystemIdMapping",
                  "description": "Policy template that defines system ID and router ID mapping."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«RouterIdSystemIdMapping»"
            }
          },
          "title": "ResponseData«RouterIdSystemIdMapping»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createRouterIdSystemIdMapping"
      },
      "task": true
    },
    {
      "name": "getRouterIdSystemIdMapping",
      "summary": "Find a router-id-system-id-mapping by its unique identifier",
      "description": "Find a router-id-system-id-mapping by its unique identifier",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "policyId: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name",
                    "systemId"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "pccAddress": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "routerInfos": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "asNumber",
                          "bgpLsId",
                          "networkIdentifier",
                          "routerId"
                        ],
                        "properties": {
                          "asNumber": {
                            "type": "object",
                            "properties": {
                              "uint32": {
                                "type": "integer",
                                "format": "int64"
                              }
                            },
                            "title": "AsNumber",
                            "description": "The as-number type represents autonomous system numbers which identify an Autonomous System (AS). An AS is a set of routers under a single technical administration, using an interior gateway protocol and common metrics to route packets within the AS, and using an exterior gateway protocol to route packets to other ASes. IANA maintains the AS number space and has delegated large parts to the regional registries. Autonomous system numbers were originally limited to 16 bits. BGP extensions have enlarged the autonomous system number space to 32 bits. This type therefore uses an uint32 base type without a range restriction in order to support a larger autonomous system number space. In the value set and its semantics, this type is equivalent to the InetAutonomousSystemNumber textual convention of the SMIv2."
                          },
                          "bgpLsId": {
                            "type": "integer",
                            "format": "int64",
                            "description": "BGP-LS topology identifier."
                          },
                          "dcIdentifier": {
                            "type": "integer",
                            "format": "int64",
                            "description": "Identifier used when resources correspond to datacenter entities. Applicable to routers defined and/or discovered with protocol=STATIC. Keep as zero by default if not defining DC entities."
                          },
                          "networkIdentifier": {
                            "type": "object",
                            "properties": {
                              "uint32": {
                                "type": "integer",
                                "format": "int64"
                              }
                            },
                            "title": "NetworkIdentifierType",
                            "description": "Network identifier."
                          },
                          "protocol": {
                            "type": "string",
                            "description": "The protocol which IGP router is using",
                            "enum": [
                              "OSPFv2",
                              "ISIS",
                              "BGP",
                              "ANY",
                              "STATIC"
                            ]
                          },
                          "routerId": {
                            "type": "object",
                            "properties": {
                              "string": {
                                "type": "string"
                              }
                            },
                            "title": "DottedQuad",
                            "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                          }
                        },
                        "title": "RouterInfo",
                        "description": "Object that defines router information."
                      }
                    },
                    "systemId": {
                      "type": "object",
                      "properties": {
                        "ipv4Address": {
                          "type": "object",
                          "description": ""
                        },
                        "ipv6Address": {
                          "type": "object",
                          "description": ""
                        }
                      },
                      "title": "IpAddress",
                      "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                    },
                    "systemName": {
                      "type": "string",
                      "description": "The system name."
                    }
                  },
                  "title": "RouterIdSystemIdMapping",
                  "description": "Policy template that defines system ID and router ID mapping."
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«RouterIdSystemIdMapping»"
            }
          },
          "title": "ResponseData«RouterIdSystemIdMapping»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getRouterIdSystemIdMapping"
      },
      "task": true
    },
    {
      "name": "updateRouterIdSystemIdMapping",
      "summary": "Modify a router-id-system-id-mapping policy",
      "description": "Modify a router-id-system-id-mapping policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "The unique ID of the policy that is being modified: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "Policy template that defines system ID and router ID mapping.: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"pccAddress\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"routerInfos\": [{\"asNumber\": {\"uint32\": 123}, \"bgpLsId\": 123, \"dcIdentifier\": 123, \"networkIdentifier\": {\"uint32\": 123}, \"protocol\": \"Must be one of [OSPFv2, ISIS, BGP, ANY, STATIC]\", \"routerId\": {\"string\": \"string\"}}], \"systemId\": {\"ipv4Address\": \"object\", \"ipv6Address\": \"object\"}, \"systemName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name",
                  "systemId"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "pccAddress": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "routerInfos": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "asNumber",
                        "bgpLsId",
                        "networkIdentifier",
                        "routerId"
                      ],
                      "properties": {
                        "asNumber": {
                          "type": "object",
                          "properties": {
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "AsNumber",
                          "description": "The as-number type represents autonomous system numbers which identify an Autonomous System (AS). An AS is a set of routers under a single technical administration, using an interior gateway protocol and common metrics to route packets within the AS, and using an exterior gateway protocol to route packets to other ASes. IANA maintains the AS number space and has delegated large parts to the regional registries. Autonomous system numbers were originally limited to 16 bits. BGP extensions have enlarged the autonomous system number space to 32 bits. This type therefore uses an uint32 base type without a range restriction in order to support a larger autonomous system number space. In the value set and its semantics, this type is equivalent to the InetAutonomousSystemNumber textual convention of the SMIv2."
                        },
                        "bgpLsId": {
                          "type": "integer",
                          "format": "int64",
                          "description": "BGP-LS topology identifier."
                        },
                        "dcIdentifier": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Identifier used when resources correspond to datacenter entities. Applicable to routers defined and/or discovered with protocol=STATIC. Keep as zero by default if not defining DC entities."
                        },
                        "networkIdentifier": {
                          "type": "object",
                          "properties": {
                            "uint32": {
                              "type": "integer",
                              "format": "int64"
                            }
                          },
                          "title": "NetworkIdentifierType",
                          "description": "Network identifier."
                        },
                        "protocol": {
                          "type": "string",
                          "description": "The protocol which IGP router is using",
                          "enum": [
                            "OSPFv2",
                            "ISIS",
                            "BGP",
                            "ANY",
                            "STATIC"
                          ]
                        },
                        "routerId": {
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "title": "DottedQuad",
                          "description": "An unsigned 32-bit number expressed in the dotted-quad notation, i.e., four octets written as decimal numbers and separated with the '.' (full stop) character."
                        }
                      },
                      "title": "RouterInfo",
                      "description": "Object that defines router information."
                    }
                  },
                  "systemId": {
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "type": "object",
                        "description": ""
                      },
                      "ipv6Address": {
                        "type": "object",
                        "description": ""
                      }
                    },
                    "title": "IpAddress",
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "systemName": {
                    "type": "string",
                    "description": "The system name."
                  }
                },
                "title": "RouterIdSystemIdMapping",
                "description": "Policy template that defines system ID and router ID mapping."
              }
            },
            "title": "Request«RouterIdSystemIdMapping»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateRouterIdSystemIdMapping"
      },
      "task": true
    },
    {
      "name": "deleteRouterIdSystemIdMapping",
      "summary": "Delete a router-id-mapping policy",
      "description": "Delete a router-id-mapping policy",
      "input": [
        {
          "name": "policyId",
          "type": "string",
          "info": "policyId: string",
          "required": true,
          "schema": {
            "title": "policyId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteRouterIdSystemIdMapping"
      },
      "task": true
    },
    {
      "name": "getAllSystemIpMplsConfig",
      "summary": "Query all system IP MPLS Configuration",
      "description": "Query all system IP MPLS Configuration",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "maintenanceMode": {
                        "type": "string",
                        "description": "The System IP MPLS Configuration",
                        "enum": [
                          "AUTOMATIC",
                          "MANUAL"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      }
                    },
                    "title": "SystemIpMplsConfig"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«SystemIpMplsConfig»»"
            }
          },
          "title": "ResponseData«List«SystemIpMplsConfig»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllSystemIpMplsConfig"
      },
      "task": true
    },
    {
      "name": "updateSystemIpMplsConfig",
      "summary": "Update a system ip mpls configuration",
      "description": "Update a system ip mpls configuration",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "systemIpMplsConfig: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"maintenanceMode\": \"Must be one of [AUTOMATIC, MANUAL]\", \"name\": \"string\", \"objectDescription\": \"string\"}}",
          "required": true,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "maintenanceMode": {
                    "type": "string",
                    "description": "The System IP MPLS Configuration",
                    "enum": [
                      "AUTOMATIC",
                      "MANUAL"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  }
                },
                "title": "SystemIpMplsConfig"
              }
            },
            "title": "Request«SystemIpMplsConfig»"
          }
        },
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the configuration that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateSystemIpMplsConfig"
      },
      "task": true
    },
    {
      "name": "getAllTunnelCreations",
      "summary": "Query all tunnel creation templates. Deprecated: Use get-all-tunnel-selections instead.",
      "description": "Query all tunnel creation templates. Deprecated: Use get-all-tunnel-selections instead.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "consumable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel is consumable"
                      },
                      "deletable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel is deletable"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "modifiable": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel is modifiable"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "protection": {
                        "type": "boolean",
                        "description": "Specifies whether or not the tunnel has a protection path. Protection path is only signalled after the primary path fails."
                      },
                      "protectionType": {
                        "type": "string",
                        "description": "Specifies path protection type. Protection path is pre-signalled and available for immediate recovery after a primary path failure.",
                        "enum": [
                          "SECONDARY",
                          "STANDBY",
                          "PRIMARY",
                          "UNKNOWN"
                        ]
                      }
                    },
                    "title": "TunnelCreationTemplate",
                    "description": "The tunnel creation template controls system behaviour when automatically creating tunnels in the network. Deprecated: Please use tunnel-creation-template instead."
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«TunnelCreationTemplate»»"
            }
          },
          "title": "ResponseData«List«TunnelCreationTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllTunnelCreations"
      },
      "task": true
    },
    {
      "name": "updateTunnelCreations",
      "summary": "Modify a tunnel creation template. Deprecated: update-tunnel-selections instead.",
      "description": "Modify a tunnel creation template. Deprecated: update-tunnel-selections instead.",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "The unique ID of the template that is being modified: string",
          "required": true,
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The tunnel creation template controls system behaviour when automatically creating tunnels in the network. Deprecated: Please use tunnel-creation-template instead.: {\"data\": {\"appId\": \"string\", \"consumable\": \"boolean\", \"deletable\": \"boolean\", \"id\": \"string\", \"modifiable\": \"boolean\", \"name\": \"string\", \"objectDescription\": \"string\", \"protection\": \"boolean\", \"protectionType\": \"Must be one of [SECONDARY, STANDBY, PRIMARY, UNKNOWN]\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "consumable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel is consumable"
                  },
                  "deletable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel is deletable"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "modifiable": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel is modifiable"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "protection": {
                    "type": "boolean",
                    "description": "Specifies whether or not the tunnel has a protection path. Protection path is only signalled after the primary path fails."
                  },
                  "protectionType": {
                    "type": "string",
                    "description": "Specifies path protection type. Protection path is pre-signalled and available for immediate recovery after a primary path failure.",
                    "enum": [
                      "SECONDARY",
                      "STANDBY",
                      "PRIMARY",
                      "UNKNOWN"
                    ]
                  }
                },
                "title": "TunnelCreationTemplate",
                "description": "The tunnel creation template controls system behaviour when automatically creating tunnels in the network. Deprecated: Please use tunnel-creation-template instead."
              }
            },
            "title": "Request«TunnelCreationTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTunnelCreations"
      },
      "task": true
    },
    {
      "name": "getAllWorkflowProfileMappings",
      "summary": "Query all workflow profiles",
      "description": "Query all workflow profiles",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "appId": {
                        "type": "string",
                        "description": "The client-defined custom Application ID for this object"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the template"
                      },
                      "name": {
                        "type": "string",
                        "description": "The name of the template"
                      },
                      "objectDescription": {
                        "type": "string",
                        "description": "The description for this object"
                      },
                      "workflowProfileInfo": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "blockServiceDeployment": {
                              "type": "boolean",
                              "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                            },
                            "continueServiceDeploymentOnError": {
                              "type": "boolean",
                              "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                            },
                            "serviceStep": {
                              "type": "string",
                              "description": "The service action step for which Workflow profile has to be applied.",
                              "enum": [
                                "preupdate",
                                "postupdate_success",
                                "postupdate_failure",
                                "postcreate_success",
                                "postcreate_failure",
                                "predelete",
                                "postdelete_failure",
                                "precreate",
                                "postdelete_success"
                              ]
                            },
                            "workflowExecutionTimeout": {
                              "type": "integer",
                              "format": "int32",
                              "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                            },
                            "workflowId": {
                              "type": "string",
                              "description": "The workflow which needs to be executed"
                            },
                            "workflowInputs": {
                              "type": "string",
                              "description": "The inputs, in json string which need to be passed for the workflow execution"
                            },
                            "workflowParams": {
                              "type": "string",
                              "description": "The parameters, in json string, which need to be passed for the workflow execution"
                            }
                          },
                          "title": "WorkflowProfileInfo",
                          "description": "Workflow Profile information"
                        }
                      }
                    },
                    "title": "WorkflowProfileTemplate",
                    "description": "workflow profile template"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«WorkflowProfileTemplate»»"
            }
          },
          "title": "ResponseData«List«WorkflowProfileTemplate»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getAllWorkflowProfileMappings"
      },
      "task": true
    },
    {
      "name": "createWorkflowProfile",
      "summary": "Create a workflow profile mapping",
      "description": "Create a workflow profile mapping",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "workflow profile template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"workflowProfileInfo\": [{\"blockServiceDeployment\": \"boolean\", \"continueServiceDeploymentOnError\": \"boolean\", \"serviceStep\": \"Must be one of [preupdate, postupdate_success, postupdate_failure, postcreate_success, postcreate_failure, predelete, postdelete_failure, precreate, postdelete_success]\", \"workflowExecutionTimeout\": 123, \"workflowId\": \"string\", \"workflowInputs\": \"string\", \"workflowParams\": \"string\"}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "workflowProfileInfo": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "blockServiceDeployment": {
                          "type": "boolean",
                          "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                        },
                        "continueServiceDeploymentOnError": {
                          "type": "boolean",
                          "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                        },
                        "serviceStep": {
                          "type": "string",
                          "description": "The service action step for which Workflow profile has to be applied.",
                          "enum": [
                            "preupdate",
                            "postupdate_success",
                            "postupdate_failure",
                            "postcreate_success",
                            "postcreate_failure",
                            "predelete",
                            "postdelete_failure",
                            "precreate",
                            "postdelete_success"
                          ]
                        },
                        "workflowExecutionTimeout": {
                          "type": "integer",
                          "format": "int32",
                          "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                        },
                        "workflowId": {
                          "type": "string",
                          "description": "The workflow which needs to be executed"
                        },
                        "workflowInputs": {
                          "type": "string",
                          "description": "The inputs, in json string which need to be passed for the workflow execution"
                        },
                        "workflowParams": {
                          "type": "string",
                          "description": "The parameters, in json string, which need to be passed for the workflow execution"
                        }
                      },
                      "title": "WorkflowProfileInfo",
                      "description": "Workflow Profile information"
                    }
                  }
                },
                "title": "WorkflowProfileTemplate",
                "description": "workflow profile template"
              }
            },
            "title": "Request«WorkflowProfileTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "workflowProfileInfo": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "blockServiceDeployment": {
                            "type": "boolean",
                            "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                          },
                          "continueServiceDeploymentOnError": {
                            "type": "boolean",
                            "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                          },
                          "serviceStep": {
                            "type": "string",
                            "description": "The service action step for which Workflow profile has to be applied.",
                            "enum": [
                              "preupdate",
                              "postupdate_success",
                              "postupdate_failure",
                              "postcreate_success",
                              "postcreate_failure",
                              "predelete",
                              "postdelete_failure",
                              "precreate",
                              "postdelete_success"
                            ]
                          },
                          "workflowExecutionTimeout": {
                            "type": "integer",
                            "format": "int32",
                            "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                          },
                          "workflowId": {
                            "type": "string",
                            "description": "The workflow which needs to be executed"
                          },
                          "workflowInputs": {
                            "type": "string",
                            "description": "The inputs, in json string which need to be passed for the workflow execution"
                          },
                          "workflowParams": {
                            "type": "string",
                            "description": "The parameters, in json string, which need to be passed for the workflow execution"
                          }
                        },
                        "title": "WorkflowProfileInfo",
                        "description": "Workflow Profile information"
                      }
                    }
                  },
                  "title": "WorkflowProfileTemplate",
                  "description": "workflow profile template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«WorkflowProfileTemplate»"
            }
          },
          "title": "ResponseData«WorkflowProfileTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createWorkflowProfile"
      },
      "task": true
    },
    {
      "name": "getWorkflowProfile",
      "summary": "Find a workflow profile mapping by its unique identifier",
      "description": "Find a workflow profile mapping by its unique identifier",
      "input": [
        {
          "name": "profileId",
          "type": "string",
          "info": "profileId: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "workflowProfileInfo": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "blockServiceDeployment": {
                            "type": "boolean",
                            "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                          },
                          "continueServiceDeploymentOnError": {
                            "type": "boolean",
                            "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                          },
                          "serviceStep": {
                            "type": "string",
                            "description": "The service action step for which Workflow profile has to be applied.",
                            "enum": [
                              "preupdate",
                              "postupdate_success",
                              "postupdate_failure",
                              "postcreate_success",
                              "postcreate_failure",
                              "predelete",
                              "postdelete_failure",
                              "precreate",
                              "postdelete_success"
                            ]
                          },
                          "workflowExecutionTimeout": {
                            "type": "integer",
                            "format": "int32",
                            "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                          },
                          "workflowId": {
                            "type": "string",
                            "description": "The workflow which needs to be executed"
                          },
                          "workflowInputs": {
                            "type": "string",
                            "description": "The inputs, in json string which need to be passed for the workflow execution"
                          },
                          "workflowParams": {
                            "type": "string",
                            "description": "The parameters, in json string, which need to be passed for the workflow execution"
                          }
                        },
                        "title": "WorkflowProfileInfo",
                        "description": "Workflow Profile information"
                      }
                    }
                  },
                  "title": "WorkflowProfileTemplate",
                  "description": "workflow profile template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«WorkflowProfileTemplate»"
            }
          },
          "title": "ResponseData«WorkflowProfileTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getWorkflowProfile"
      },
      "task": true
    },
    {
      "name": "updateWorkflowProfile",
      "summary": "Update a workflow profile mapping",
      "description": "Update a workflow profile mapping",
      "input": [
        {
          "name": "profileId",
          "type": "string",
          "info": "Update a workflow profile: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "workflow profile template: {\"data\": {\"appId\": \"string\", \"id\": \"string\", \"name\": \"string\", \"objectDescription\": \"string\", \"workflowProfileInfo\": [{\"blockServiceDeployment\": \"boolean\", \"continueServiceDeploymentOnError\": \"boolean\", \"serviceStep\": \"Must be one of [preupdate, postupdate_success, postupdate_failure, postcreate_success, postcreate_failure, predelete, postdelete_failure, precreate, postdelete_success]\", \"workflowExecutionTimeout\": 123, \"workflowId\": \"string\", \"workflowInputs\": \"string\", \"workflowParams\": \"string\"}]}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "appId": {
                    "type": "string",
                    "description": "The client-defined custom Application ID for this object"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier of the template"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the template"
                  },
                  "objectDescription": {
                    "type": "string",
                    "description": "The description for this object"
                  },
                  "workflowProfileInfo": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "blockServiceDeployment": {
                          "type": "boolean",
                          "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                        },
                        "continueServiceDeploymentOnError": {
                          "type": "boolean",
                          "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                        },
                        "serviceStep": {
                          "type": "string",
                          "description": "The service action step for which Workflow profile has to be applied.",
                          "enum": [
                            "preupdate",
                            "postupdate_success",
                            "postupdate_failure",
                            "postcreate_success",
                            "postcreate_failure",
                            "predelete",
                            "postdelete_failure",
                            "precreate",
                            "postdelete_success"
                          ]
                        },
                        "workflowExecutionTimeout": {
                          "type": "integer",
                          "format": "int32",
                          "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                        },
                        "workflowId": {
                          "type": "string",
                          "description": "The workflow which needs to be executed"
                        },
                        "workflowInputs": {
                          "type": "string",
                          "description": "The inputs, in json string which need to be passed for the workflow execution"
                        },
                        "workflowParams": {
                          "type": "string",
                          "description": "The parameters, in json string, which need to be passed for the workflow execution"
                        }
                      },
                      "title": "WorkflowProfileInfo",
                      "description": "Workflow Profile information"
                    }
                  }
                },
                "title": "WorkflowProfileTemplate",
                "description": "workflow profile template"
              }
            },
            "title": "Request«WorkflowProfileTemplate»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "appId": {
                      "type": "string",
                      "description": "The client-defined custom Application ID for this object"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier of the template"
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the template"
                    },
                    "objectDescription": {
                      "type": "string",
                      "description": "The description for this object"
                    },
                    "workflowProfileInfo": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "blockServiceDeployment": {
                            "type": "boolean",
                            "description": "Describes if subsequent service deployment should be blocked until workflow execution is done. True by default for workflows which are executed pre deployment. Not applicable for workflows executed post deployment."
                          },
                          "continueServiceDeploymentOnError": {
                            "type": "boolean",
                            "description": "For blocking workflow executions, describes if subsequent service deployment should continue if workflow execution fails. Only applicable for workflows which are executed pre deployment. Not applicable for workflows executed pre deletion."
                          },
                          "serviceStep": {
                            "type": "string",
                            "description": "The service action step for which Workflow profile has to be applied.",
                            "enum": [
                              "preupdate",
                              "postupdate_success",
                              "postupdate_failure",
                              "postcreate_success",
                              "postcreate_failure",
                              "predelete",
                              "postdelete_failure",
                              "precreate",
                              "postdelete_success"
                            ]
                          },
                          "workflowExecutionTimeout": {
                            "type": "integer",
                            "format": "int32",
                            "description": "For blocking workflow executions, describes the max timeout in sec, within which workflow is expected to finish. Defaults to 60 sec when not provided."
                          },
                          "workflowId": {
                            "type": "string",
                            "description": "The workflow which needs to be executed"
                          },
                          "workflowInputs": {
                            "type": "string",
                            "description": "The inputs, in json string which need to be passed for the workflow execution"
                          },
                          "workflowParams": {
                            "type": "string",
                            "description": "The parameters, in json string, which need to be passed for the workflow execution"
                          }
                        },
                        "title": "WorkflowProfileInfo",
                        "description": "Workflow Profile information"
                      }
                    }
                  },
                  "title": "WorkflowProfileTemplate",
                  "description": "workflow profile template"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«WorkflowProfileTemplate»"
            }
          },
          "title": "ResponseData«WorkflowProfileTemplate»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateWorkflowProfile"
      },
      "task": true
    },
    {
      "name": "deleteWorkflowProfile",
      "summary": "Delete a workflow profile",
      "description": "Delete a workflow profile",
      "input": [
        {
          "name": "profileId",
          "type": "string",
          "info": "profileId: string",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteWorkflowProfile"
      },
      "task": true
    },
    {
      "name": "getV4Tenants",
      "summary": "gets",
      "description": "gets",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "tenantName"
                    ],
                    "properties": {
                      "address": {
                        "type": "string",
                        "description": "The mailing address for the tenant"
                      },
                      "contactName": {
                        "type": "string",
                        "description": "The contact name for the tenant"
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier for the tenant"
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "The phone number for the tenant"
                      },
                      "tenantName": {
                        "type": "string",
                        "description": "The name of the tenant"
                      }
                    },
                    "title": "Tenant",
                    "description": "A tenant is a logical group that allows the assigning of network resources"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Tenant»»"
            }
          },
          "title": "ResponseData«List«Tenant»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4Tenants"
      },
      "task": true
    },
    {
      "name": "postV4Tenants",
      "summary": "create",
      "description": "create",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "A tenant is a logical group that allows the assigning of network resources: {\"data\": {\"address\": \"string\", \"contactName\": \"string\", \"customerId\": 123, \"id\": \"string\", \"phoneNumber\": \"string\", \"tenantName\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "required": [
                  "tenantName"
                ],
                "properties": {
                  "address": {
                    "type": "string",
                    "description": "The mailing address for the tenant"
                  },
                  "contactName": {
                    "type": "string",
                    "description": "The contact name for the tenant"
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                  },
                  "id": {
                    "type": "string",
                    "description": "The unique identifier for the tenant"
                  },
                  "phoneNumber": {
                    "type": "string",
                    "description": "The phone number for the tenant"
                  },
                  "tenantName": {
                    "type": "string",
                    "description": "The name of the tenant"
                  }
                },
                "title": "Tenant",
                "description": "A tenant is a logical group that allows the assigning of network resources"
              }
            },
            "title": "Request«Tenant»"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "tenantName"
                  ],
                  "properties": {
                    "address": {
                      "type": "string",
                      "description": "The mailing address for the tenant"
                    },
                    "contactName": {
                      "type": "string",
                      "description": "The contact name for the tenant"
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier for the tenant"
                    },
                    "phoneNumber": {
                      "type": "string",
                      "description": "The phone number for the tenant"
                    },
                    "tenantName": {
                      "type": "string",
                      "description": "The name of the tenant"
                    }
                  },
                  "title": "Tenant",
                  "description": "A tenant is a logical group that allows the assigning of network resources"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Tenant»"
            }
          },
          "title": "ResponseData«Tenant»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postV4Tenants"
      },
      "task": true
    },
    {
      "name": "getCustomerAll",
      "summary": "Query all Customers",
      "description": "Query all Customers",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "address": {
                        "type": "string",
                        "description": "The mailing address for the customer"
                      },
                      "contactPerson": {
                        "type": "string",
                        "description": "The contact of the customer"
                      },
                      "customerName": {
                        "type": "string",
                        "description": "The name of the customer"
                      },
                      "description": {
                        "type": "string",
                        "description": "The description of the customer"
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the customer"
                      },
                      "id": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The unique identifier for the customer"
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "The phone number for the customer"
                      }
                    },
                    "title": "Customer",
                    "description": "The customer defined in the system"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Customer»»"
            }
          },
          "title": "ResponseData«List«Customer»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getCustomerAll"
      },
      "task": true
    },
    {
      "name": "getCustomer",
      "summary": "Find a customer by customer-Id",
      "description": "Find a customer by customer-Id",
      "input": [
        {
          "name": "customerId",
          "type": "number",
          "info": "The Customer-Id of the Customer: 123",
          "required": true,
          "schema": {
            "title": "customerId",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "properties": {
                    "address": {
                      "type": "string",
                      "description": "The mailing address for the customer"
                    },
                    "contactPerson": {
                      "type": "string",
                      "description": "The contact of the customer"
                    },
                    "customerName": {
                      "type": "string",
                      "description": "The name of the customer"
                    },
                    "description": {
                      "type": "string",
                      "description": "The description of the customer"
                    },
                    "email": {
                      "type": "string",
                      "description": "The email address of the customer"
                    },
                    "id": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The unique identifier for the customer"
                    },
                    "phoneNumber": {
                      "type": "string",
                      "description": "The phone number for the customer"
                    }
                  },
                  "title": "Customer",
                  "description": "The customer defined in the system"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Customer»"
            }
          },
          "title": "ResponseData«Customer»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCustomer"
      },
      "task": true
    },
    {
      "name": "resync",
      "summary": "resync",
      "description": "resync",
      "input": [
        {
          "name": "provider",
          "type": "string",
          "info": "The Identity Provider in which to resynchronize data: Must be one of [KEYSTONE, SSO]",
          "required": true,
          "schema": {
            "title": "provider",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/resync"
      },
      "task": true
    },
    {
      "name": "getV4TenantsTenantUuid",
      "summary": "get",
      "description": "get",
      "input": [
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier for the query: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "tenantName"
                  ],
                  "properties": {
                    "address": {
                      "type": "string",
                      "description": "The mailing address for the tenant"
                    },
                    "contactName": {
                      "type": "string",
                      "description": "The contact name for the tenant"
                    },
                    "customerId": {
                      "type": "integer",
                      "format": "int64",
                      "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                    },
                    "id": {
                      "type": "string",
                      "description": "The unique identifier for the tenant"
                    },
                    "phoneNumber": {
                      "type": "string",
                      "description": "The phone number for the tenant"
                    },
                    "tenantName": {
                      "type": "string",
                      "description": "The name of the tenant"
                    }
                  },
                  "title": "Tenant",
                  "description": "A tenant is a logical group that allows the assigning of network resources"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Tenant»"
            }
          },
          "title": "ResponseData«Tenant»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4TenantsTenantUuid"
      },
      "task": true
    },
    {
      "name": "putV4TenantsTenantUuid",
      "summary": "update",
      "description": "update",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "A request object used to modify Tenant: {\"data\": {\"address\": \"string\", \"contactName\": \"string\", \"customerId\": 123, \"phoneNumber\": \"string\"}}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "description": "The mailing address for the tenant"
                  },
                  "contactName": {
                    "type": "string",
                    "description": "The contact name for the tenant"
                  },
                  "customerId": {
                    "type": "integer",
                    "format": "int64",
                    "description": "The customer-id associated with the tenant"
                  },
                  "phoneNumber": {
                    "type": "string",
                    "description": "The phone number for the tenant"
                  }
                },
                "title": "TenantRequest",
                "description": "A request object used to modify Tenant"
              }
            },
            "title": "Request«TenantRequest»"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putV4TenantsTenantUuid"
      },
      "task": true
    },
    {
      "name": "deleteV4TenantsTenantUuid",
      "summary": "delete",
      "description": "delete",
      "input": [
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the Tenant to be deleted: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteV4TenantsTenantUuid"
      },
      "task": true
    },
    {
      "name": "getResources",
      "summary": "getResources",
      "description": "getResources",
      "input": [
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier for the tenant: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "adminState": {
                        "type": "string",
                        "description": "The current administrative state of the entity",
                        "enum": [
                          "MAINTENANCE",
                          "DOWN",
                          "UP"
                        ]
                      },
                      "appId": {
                        "type": "string",
                        "description": "The client-defined, custom Application ID for the entity"
                      },
                      "customAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "attributeName": {
                              "type": "string",
                              "description": "custom attribute name"
                            },
                            "attributeValue": {
                              "type": "string",
                              "description": "custom attribute value"
                            }
                          },
                          "title": "CustomAttribute",
                          "description": "A custom attribute"
                        }
                      },
                      "customAttributesTemplateId": {
                        "type": "string",
                        "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                      },
                      "externalIds": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "description": "The entity type that is managing this external-id",
                              "enum": [
                                "NFM_T",
                                "NFM_P",
                                "NODE",
                                "MDM",
                                "NSP"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "description": "The local identifier used on the entity."
                            },
                            "location": {
                              "type": "array",
                              "description": "The entity instance that is managing this external-id. This may be an IP address or a DNS name.",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "title": "ExternalId",
                          "description": "An external identifier to the NSP."
                        }
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier of the entity"
                      },
                      "neDeploymentState": {
                        "type": "string",
                        "description": "The current deployment state of the entity",
                        "enum": [
                          "DEPLOYED",
                          "NA",
                          "FAILED",
                          "UNKNOWN",
                          "PENDING"
                        ]
                      },
                      "operationalState": {
                        "type": "string",
                        "description": "The current operational state of the entity",
                        "enum": [
                          "PARTIALLY_DOWN",
                          "TRANSITION",
                          "DOWN",
                          "DEGRADED",
                          "UNKNOWN",
                          "UP"
                        ]
                      }
                    },
                    "title": "BaseEntity"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«BaseEntity»»"
            }
          },
          "title": "ResponseData«List«BaseEntity»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getResources"
      },
      "task": true
    },
    {
      "name": "addResources",
      "summary": "addResources",
      "description": "addResources",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The resource unique identifier(s) to be assigned to the tenant: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be modified: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/addResources"
      },
      "task": true
    },
    {
      "name": "deleteResources",
      "summary": "deleteResources",
      "description": "deleteResources",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "The resource unique identifier(s) to be removed from the tenant: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "Request«List«string»»"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be modified: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteResources"
      },
      "task": true
    },
    {
      "name": "getUsergroup",
      "summary": "getUsergroup",
      "description": "getUsergroup",
      "input": [
        {
          "name": "groupName",
          "type": "string",
          "info": "The unique name of the Usergroup to be found: string",
          "required": true,
          "schema": {
            "title": "groupName",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to which the user is assigned: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "OPERATOR",
                      "ADMIN",
                      "USER"
                    ]
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«string»»"
            }
          },
          "title": "ResponseData«List«string»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getUsergroup"
      },
      "task": true
    },
    {
      "name": "deleteUsergroup",
      "summary": "deleteUsergroup",
      "description": "deleteUsergroup",
      "input": [
        {
          "name": "groupName",
          "type": "string",
          "info": "The unique name of the Usergroup to be removed: string",
          "required": true,
          "schema": {
            "title": "groupName",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to which the user is assigned: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteUsergroup"
      },
      "task": true
    },
    {
      "name": "createUsergroup",
      "summary": "createUsergroup",
      "description": "createUsergroup",
      "input": [
        {
          "name": "groupName",
          "type": "string",
          "info": "The unique name of the Usergroup to be assigned: string",
          "required": true,
          "schema": {
            "title": "groupName",
            "type": "string"
          }
        },
        {
          "name": "roleType",
          "type": "string",
          "info": "The role that the Usergroup will be assigned on the tenant. 'Operator' role can read/write on in its assigned tenant. 'User' role is read-only for its tenant. 'Admin' rol...(description truncated): Must be one of [OPERATOR, ADMIN, USER]",
          "required": true,
          "schema": {
            "title": "roleType",
            "type": "string"
          }
        },
        {
          "name": "tenantUuid",
          "type": "string",
          "info": "The unique identifier of the tenant to be modified: string",
          "required": true,
          "schema": {
            "title": "tenantUuid",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "boolean"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«boolean»"
            }
          },
          "title": "ResponseData«boolean»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createUsergroup"
      },
      "task": true
    },
    {
      "name": "getV4Usergroups",
      "summary": "Query all Usergroups",
      "description": "Query all Usergroups",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "name"
                    ],
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "The usergroup name"
                      }
                    },
                    "title": "Usergroup",
                    "description": "The usergroup defined in the system"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Usergroup»»"
            }
          },
          "title": "ResponseData«List«Usergroup»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getV4Usergroups"
      },
      "task": true
    },
    {
      "name": "getV4UsergroupsGroupName",
      "summary": "Find a Usergroup by a group name",
      "description": "Find a Usergroup by a group name",
      "input": [
        {
          "name": "groupName",
          "type": "string",
          "info": "The unique name of the Userroup to be queried: string",
          "required": true,
          "schema": {
            "title": "groupName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "name"
                  ],
                  "properties": {
                    "name": {
                      "type": "string",
                      "description": "The usergroup name"
                    }
                  },
                  "title": "Usergroup",
                  "description": "The usergroup defined in the system"
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«Usergroup»"
            }
          },
          "title": "ResponseData«Usergroup»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4UsergroupsGroupName"
      },
      "task": true
    },
    {
      "name": "getV4UsergroupsGroupNameTenants",
      "summary": "getTenants",
      "description": "getTenants",
      "input": [
        {
          "name": "groupName",
          "type": "string",
          "info": "The unique name of the Usergroup to be queried: string",
          "required": true,
          "schema": {
            "title": "groupName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "type": "object",
          "properties": {
            "response": {
              "type": "object",
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "tenantName"
                    ],
                    "properties": {
                      "address": {
                        "type": "string",
                        "description": "The mailing address for the tenant"
                      },
                      "contactName": {
                        "type": "string",
                        "description": "The contact name for the tenant"
                      },
                      "customerId": {
                        "type": "integer",
                        "format": "int64",
                        "description": "The customer-id associated with the tenant. This is optional and default value is 1"
                      },
                      "id": {
                        "type": "string",
                        "description": "The unique identifier for the tenant"
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "The phone number for the tenant"
                      },
                      "tenantName": {
                        "type": "string",
                        "description": "The name of the tenant"
                      }
                    },
                    "title": "Tenant",
                    "description": "A tenant is a logical group that allows the assigning of network resources"
                  }
                },
                "endRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "startRow": {
                  "type": "integer",
                  "format": "int64"
                },
                "status": {
                  "type": "integer",
                  "format": "int32"
                },
                "totalRows": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "title": "Response«List«Tenant»»"
            }
          },
          "title": "ResponseData«List«Tenant»»"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getV4UsergroupsGroupNameTenants"
      },
      "task": true
    },
    {
      "name": "getNrcpHistorical",
      "summary": "getNrcpHistorical",
      "description": "Get NSP NRCP historical parameters.",
      "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": "/getNrcpHistorical"
      },
      "task": true
    },
    {
      "name": "patchNrcpHistorical",
      "summary": "patchNrcpHistorical",
      "description": "Patch NSP NRCP historical parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Grouping of all historical related parameters for IP/MPLS optimization.: {\"data\": {\"historicalIgpTopologyEnabled\": \"boolean\", \"historicalLspStatsEnabled\": \"boolean\", \"historicalPathEnabled\": \"boolean\"}}",
          "required": false,
          "schema": {
            "title": "RequestNrcpHistorical",
            "type": "object",
            "properties": {
              "data": {
                "title": "NrcpHistorical",
                "type": "object",
                "properties": {
                  "historicalIgpTopologyEnabled": {
                    "type": "boolean",
                    "description": "Toggle whether NRCP should publish IGP topology events for historical use or not. The NRCP Historical Application will consume the messages and persist records to the database."
                  },
                  "historicalLspStatsEnabled": {
                    "type": "boolean",
                    "description": "Toggle whether NRCP should publish LSP statistics events for historical use or not. The NRCP Historical Application will consume the messages and persist records to the database."
                  },
                  "historicalPathEnabled": {
                    "type": "boolean",
                    "description": "Toggle whether NRCP should publish LSP path events for historical use or not. The NRCP Historical Application will consume the messages and persist records to the database."
                  }
                },
                "description": "Grouping of all historical related parameters for IP/MPLS optimization."
              }
            }
          }
        }
      ],
      "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": "/patchNrcpHistorical"
      },
      "task": true
    },
    {
      "name": "getSrPolicyConfig",
      "summary": "getSrPolicyConfig",
      "description": "Get SR policy configuration parameters.",
      "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": "/getSrPolicyConfig"
      },
      "task": true
    },
    {
      "name": "patchSrPolicyConfig",
      "summary": "patchSrPolicyConfig",
      "description": "Patch SR policy configuration parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Grouping of all SR policy related parameters for IP/MPLS optimization.: {\"data\": {\"bsidGenerationEnabled\": \"boolean\", \"defaultBsidRangeEnd\": 123, \"defaultBsidRangeStart\": 123, \"defaultColorRangeEnd\": 123, \"defaultColorRangeStart\": 123}}",
          "required": false,
          "schema": {
            "title": "RequestSrPolicyConfig",
            "type": "object",
            "properties": {
              "data": {
                "title": "SrPolicyConfig",
                "type": "object",
                "properties": {
                  "bsidGenerationEnabled": {
                    "type": "boolean",
                    "description": "Toggle whether automatic BSID generation feature is permitted. This can be used to disable auto generation of SR Policies that may occur during label stack compression scenarios"
                  },
                  "defaultBsidRangeEnd": {
                    "type": "integer",
                    "description": "Default end value of binding SID range"
                  },
                  "defaultBsidRangeStart": {
                    "type": "integer",
                    "description": "Default start value of binding SID range"
                  },
                  "defaultColorRangeEnd": {
                    "type": "integer",
                    "description": "Default end value of color range"
                  },
                  "defaultColorRangeStart": {
                    "type": "integer",
                    "description": "Default start value of color range"
                  }
                },
                "description": "Grouping of all SR policy related parameters for IP/MPLS optimization."
              }
            }
          }
        }
      ],
      "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": "/patchSrPolicyConfig"
      },
      "task": true
    },
    {
      "name": "addElineEndpoint",
      "summary": "addElineEndpoint",
      "description": "Add an endpoint to an E-Line service",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "elineEndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"connectionProfileId\": \"string\", \"connectionProfileVlanTag\": \"Must be one of [UNDEFINED, OUTER, INNER]\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"localAcName\": \"string\", \"localEthTag\": 123, \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"readOnly\": \"boolean\", \"remoteAcName\": \"string\", \"remoteEthTag\": 123, \"siteServiceQosProfile\": {\"egressOverrideQueues\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": {\"cir\": 123, \"pir\": 123, \"rateType\": \"Must be one of [kbps, percent]\", \"schedulerType\": \"Must be one of [Scheduler, Arbiter]\"}}}, \"ingressOverrideQueues\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": {\"cir\": 123, \"pir\": 123, \"rateType\": \"Must be one of [kbps, percent]\", \"schedulerType\": \"Must be one of [Scheduler, Arbiter]\"}}}, \"qosProfile\": 123}}}",
          "required": true,
          "schema": {
            "title": "RequestElineEndpointRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "ElineEndpointRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "example": "MAINTENANCE"
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "connectionProfileId": {
                    "type": "string",
                    "description": "The id of the connection-profile"
                  },
                  "connectionProfileVlanTag": {
                    "title": "ConnectionProfileVlanTag",
                    "enum": [
                      "UNDEFINED",
                      "OUTER",
                      "INNER"
                    ],
                    "type": "string",
                    "description": "The vlan tag of the connection profile",
                    "example": "UNDEFINED"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "title": "CustomAttribute",
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "description": "A custom attribute"
                    },
                    "description": ""
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "title": "EncapType",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ],
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "example": "Null"
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "localAcName": {
                    "type": "string",
                    "description": "the local attachement circuit name"
                  },
                  "localEthTag": {
                    "type": "integer",
                    "description": "ethernet tag of the local attachement circuit"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "title": "PortMode",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ],
                    "type": "string",
                    "description": "the mode of the Port",
                    "example": "NETWORK"
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "remoteAcName": {
                    "type": "string",
                    "description": "the remote attachement circuit name"
                  },
                  "remoteEthTag": {
                    "type": "integer",
                    "description": "ethernet tag of the remote attachement circuit"
                  },
                  "siteServiceQosProfile": {
                    "title": "SiteServiceQosProfile",
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "title": "Queue",
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "description": "The Maximum Burst Size in KB."
                            },
                            "pir": {
                              "type": "integer",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "title": "QueueType",
                              "enum": [
                                "Policer",
                                "Queue"
                              ],
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "example": "Policer"
                            },
                            "rateType": {
                              "title": "RateType",
                              "enum": [
                                "kbps",
                                "percent"
                              ],
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "example": "kbps"
                            }
                          },
                          "description": "The parameters of a queue"
                        },
                        "description": ""
                      },
                      "egressParam": {
                        "title": "EgressParam",
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "title": "Tier1Scheduler",
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "title": "Scheduler",
                                "type": "object",
                                "properties": {
                                  "cir": {
                                    "type": "integer",
                                    "description": "Scheduler CIR override in either Kbps or percentage (0..100), where -3 is sum of CIR, -2 is no override, -1 is maximum"
                                  },
                                  "pir": {
                                    "type": "integer",
                                    "description": "Scheduler PIR override in either Kbps or percentage (1..100), where -2 is no override, -1 is maximum"
                                  },
                                  "rateType": {
                                    "title": "RateType1",
                                    "enum": [
                                      "kbps",
                                      "percent"
                                    ],
                                    "type": "string",
                                    "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the scheduler rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                                    "example": "kbps"
                                  },
                                  "schedulerType": {
                                    "title": "SchedulerType",
                                    "enum": [
                                      "Scheduler",
                                      "Arbiter"
                                    ],
                                    "type": "string",
                                    "description": "The type of the scheduler override. Default is Scheduler.",
                                    "example": "Scheduler"
                                  }
                                },
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "description": "Egress Qos policy parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "title": "Queue",
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "description": "The Maximum Burst Size in KB."
                            },
                            "pir": {
                              "type": "integer",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "title": "QueueType",
                              "enum": [
                                "Policer",
                                "Queue"
                              ],
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "example": "Policer"
                            },
                            "rateType": {
                              "title": "RateType",
                              "enum": [
                                "kbps",
                                "percent"
                              ],
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "example": "kbps"
                            }
                          },
                          "description": "The parameters of a queue"
                        },
                        "description": ""
                      },
                      "ingressParam": {
                        "title": "IngressParam",
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "title": "Tier1Scheduler",
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "title": "Scheduler",
                                "type": "object",
                                "properties": {
                                  "cir": {
                                    "type": "integer",
                                    "description": "Scheduler CIR override in either Kbps or percentage (0..100), where -3 is sum of CIR, -2 is no override, -1 is maximum"
                                  },
                                  "pir": {
                                    "type": "integer",
                                    "description": "Scheduler PIR override in either Kbps or percentage (1..100), where -2 is no override, -1 is maximum"
                                  },
                                  "rateType": {
                                    "title": "RateType1",
                                    "enum": [
                                      "kbps",
                                      "percent"
                                    ],
                                    "type": "string",
                                    "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the scheduler rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                                    "example": "kbps"
                                  },
                                  "schedulerType": {
                                    "title": "SchedulerType",
                                    "enum": [
                                      "Scheduler",
                                      "Arbiter"
                                    ],
                                    "type": "string",
                                    "description": "The type of the scheduler override. Default is Scheduler.",
                                    "example": "Scheduler"
                                  }
                                },
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "description": "Ingress Qos policy parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  }
                }
              }
            }
          }
        }
      ],
      "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": "/addElineEndpoint"
      },
      "task": true
    },
    {
      "name": "addL3DciL3Endpoint",
      "summary": "addL3DciL3Endpoint",
      "description": "Add an L3 endpoint to an L3 DCI service",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "l3EndpointRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"connectionProfileId\": \"string\", \"connectionProfileVlanTag\": \"Must be one of [UNDEFINED, OUTER, INNER]\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"encapType\": \"Must be one of [Null, Unknown, Dot1Q, QinQ]\", \"id\": \"string\", \"innerTag\": 123, \"isHub\": \"boolean\", \"name\": \"string\", \"outerTag\": 123, \"portMode\": \"Must be one of [NETWORK, UNDEFINED, ACCESS, HYBRID]\", \"primaryAddress\": {\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}, \"readOnly\": \"boolean\", \"routingBgp\": {\"routes\": [{\"bfdEnabled\": \"boolean\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"peerAS\": 123, \"peerIpAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}}]}, \"routingStatic\": {\"routes\": [{\"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"destination\": {\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}, \"preference\": 123, \"routeType\": \"Must be one of [black_hole, next_hop]\", \"targetIpAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}}]}, \"secondaryAddresses\": [{\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}], \"siteServiceQosProfile\": {\"egressOverrideQueues\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"egressParam\": {\"tier1Scheduler\": {\"scheduler\": {\"cir\": 123, \"pir\": 123, \"rateType\": \"Must be one of [kbps, percent]\", \"schedulerType\": \"Must be one of [Scheduler, Arbiter]\"}}}, \"ingressOverrideQueues\": [{\"cbs\": 123, \"cir\": 123, \"id\": 123, \"mbs\": 123, \"pir\": 123, \"queueType\": \"Must be one of [Policer, Queue]\", \"rateType\": \"Must be one of [kbps, percent]\"}], \"ingressParam\": {\"tier1Scheduler\": {\"scheduler\": {\"cir\": 123, \"pir\": 123, \"rateType\": \"Must be one of [kbps, percent]\", \"schedulerType\": \"Must be one of [Scheduler, Arbiter]\"}}}, \"qosProfile\": 123}, \"vrfName\": \"string\"}}",
          "required": true,
          "schema": {
            "title": "RequestL3EndpointRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "L3EndpointRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "example": "MAINTENANCE"
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "connectionProfileId": {
                    "type": "string",
                    "description": "The id of the connection-profile"
                  },
                  "connectionProfileVlanTag": {
                    "title": "ConnectionProfileVlanTag",
                    "enum": [
                      "UNDEFINED",
                      "OUTER",
                      "INNER"
                    ],
                    "type": "string",
                    "description": "The vlan tag of the connection profile",
                    "example": "UNDEFINED"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "title": "CustomAttribute",
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "description": "A custom attribute"
                    },
                    "description": ""
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "encapType": {
                    "title": "EncapType",
                    "enum": [
                      "Null",
                      "Unknown",
                      "Dot1Q",
                      "QinQ"
                    ],
                    "type": "string",
                    "description": "The encapsulation type of the ethernet port",
                    "example": "Null"
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "innerTag": {
                    "type": "integer",
                    "description": "The inner tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the service endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "outerTag": {
                    "type": "integer",
                    "description": "The outer tag. Applicable to Dot1Q or QinQ ports."
                  },
                  "portMode": {
                    "title": "PortMode",
                    "enum": [
                      "NETWORK",
                      "UNDEFINED",
                      "ACCESS",
                      "HYBRID"
                    ],
                    "type": "string",
                    "description": "the mode of the Port",
                    "example": "NETWORK"
                  },
                  "primaryAddress": {
                    "title": "IpPrefix",
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "title": "Ipv4Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                      },
                      "ipv6Prefix": {
                        "title": "Ipv6Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                      }
                    },
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "routingBgp": {
                    "title": "RoutingBgp",
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "title": "EbgpRoute",
                          "required": [
                            "peerAS",
                            "peerIpAddress"
                          ],
                          "type": "object",
                          "properties": {
                            "bfdEnabled": {
                              "type": "boolean",
                              "description": "BFD protocol monitoring for the remote peer"
                            },
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "title": "CustomAttribute",
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "description": "A custom attribute"
                              },
                              "description": ""
                            },
                            "peerAS": {
                              "type": "integer",
                              "description": "Autonomous System number for the remote peer. Mandatory for Post only"
                            },
                            "peerIpAddress": {
                              "title": "IpAddress",
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "title": "Ipv4Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                },
                                "ipv6Address": {
                                  "title": "Ipv6Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                }
                              },
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            }
                          }
                        },
                        "description": ""
                      }
                    },
                    "description": "BGP specific configuration."
                  },
                  "routingStatic": {
                    "title": "RoutingStatic",
                    "type": "object",
                    "properties": {
                      "routes": {
                        "type": "array",
                        "items": {
                          "title": "StaticRoute",
                          "type": "object",
                          "properties": {
                            "customAttributes": {
                              "type": "array",
                              "items": {
                                "title": "CustomAttribute",
                                "type": "object",
                                "properties": {
                                  "attributeName": {
                                    "type": "string",
                                    "description": "custom attribute name"
                                  },
                                  "attributeValue": {
                                    "type": "string",
                                    "description": "custom attribute value"
                                  }
                                },
                                "description": "A custom attribute"
                              },
                              "description": ""
                            },
                            "destination": {
                              "title": "IpPrefix",
                              "type": "object",
                              "properties": {
                                "ipv4Prefix": {
                                  "title": "Ipv4Prefix",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                                },
                                "ipv6Prefix": {
                                  "title": "Ipv6Prefix",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                }
                              },
                              "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                            },
                            "preference": {
                              "type": "integer",
                              "description": "The preference of this static route. The default is 5 and the range is from 1 - 255"
                            },
                            "routeType": {
                              "title": "RouteType",
                              "enum": [
                                "black_hole",
                                "next_hop"
                              ],
                              "type": "string",
                              "description": "Specifies the type of static route",
                              "example": "black_hole"
                            },
                            "targetIpAddress": {
                              "title": "IpAddress",
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "title": "Ipv4Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                },
                                "ipv6Address": {
                                  "title": "Ipv6Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                }
                              },
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            }
                          }
                        },
                        "description": ""
                      }
                    }
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "items": {
                      "title": "IpPrefix",
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "title": "Ipv4Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                        },
                        "ipv6Prefix": {
                          "title": "Ipv6Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                        }
                      },
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    },
                    "description": "A list of secondary IP addresses assigned to the service endpoint"
                  },
                  "siteServiceQosProfile": {
                    "title": "SiteServiceQosProfile",
                    "type": "object",
                    "properties": {
                      "egressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "title": "Queue",
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "description": "The Maximum Burst Size in KB."
                            },
                            "pir": {
                              "type": "integer",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "title": "QueueType",
                              "enum": [
                                "Policer",
                                "Queue"
                              ],
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "example": "Policer"
                            },
                            "rateType": {
                              "title": "RateType",
                              "enum": [
                                "kbps",
                                "percent"
                              ],
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "example": "kbps"
                            }
                          },
                          "description": "The parameters of a queue"
                        },
                        "description": ""
                      },
                      "egressParam": {
                        "title": "EgressParam",
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "title": "Tier1Scheduler",
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "title": "Scheduler",
                                "type": "object",
                                "properties": {
                                  "cir": {
                                    "type": "integer",
                                    "description": "Scheduler CIR override in either Kbps or percentage (0..100), where -3 is sum of CIR, -2 is no override, -1 is maximum"
                                  },
                                  "pir": {
                                    "type": "integer",
                                    "description": "Scheduler PIR override in either Kbps or percentage (1..100), where -2 is no override, -1 is maximum"
                                  },
                                  "rateType": {
                                    "title": "RateType1",
                                    "enum": [
                                      "kbps",
                                      "percent"
                                    ],
                                    "type": "string",
                                    "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the scheduler rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                                    "example": "kbps"
                                  },
                                  "schedulerType": {
                                    "title": "SchedulerType",
                                    "enum": [
                                      "Scheduler",
                                      "Arbiter"
                                    ],
                                    "type": "string",
                                    "description": "The type of the scheduler override. Default is Scheduler.",
                                    "example": "Scheduler"
                                  }
                                },
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "description": "Egress Qos policy parameters associated with an endpoint."
                      },
                      "ingressOverrideQueues": {
                        "type": "array",
                        "items": {
                          "title": "Queue",
                          "type": "object",
                          "properties": {
                            "cbs": {
                              "type": "integer",
                              "description": "The Committed Burst Size in KB."
                            },
                            "cir": {
                              "type": "integer",
                              "description": "The Committed Information Rate in either Kbps or percentage (0..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "id": {
                              "type": "integer",
                              "description": "ID of the queue"
                            },
                            "mbs": {
                              "type": "integer",
                              "description": "The Maximum Burst Size in KB."
                            },
                            "pir": {
                              "type": "integer",
                              "description": "The Peak Information Rate in either Kbps or percentage (1..100). Default value, no override: set to -2; Max rate available: set to -1"
                            },
                            "queueType": {
                              "title": "QueueType",
                              "enum": [
                                "Policer",
                                "Queue"
                              ],
                              "type": "string",
                              "description": "The type of the queue override. Default is Queue.",
                              "example": "Policer"
                            },
                            "rateType": {
                              "title": "RateType",
                              "enum": [
                                "kbps",
                                "percent"
                              ],
                              "type": "string",
                              "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the queue rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                              "example": "kbps"
                            }
                          },
                          "description": "The parameters of a queue"
                        },
                        "description": ""
                      },
                      "ingressParam": {
                        "title": "IngressParam",
                        "type": "object",
                        "properties": {
                          "tier1Scheduler": {
                            "title": "Tier1Scheduler",
                            "type": "object",
                            "properties": {
                              "scheduler": {
                                "title": "Scheduler",
                                "type": "object",
                                "properties": {
                                  "cir": {
                                    "type": "integer",
                                    "description": "Scheduler CIR override in either Kbps or percentage (0..100), where -3 is sum of CIR, -2 is no override, -1 is maximum"
                                  },
                                  "pir": {
                                    "type": "integer",
                                    "description": "Scheduler PIR override in either Kbps or percentage (1..100), where -2 is no override, -1 is maximum"
                                  },
                                  "rateType": {
                                    "title": "RateType1",
                                    "enum": [
                                      "kbps",
                                      "percent"
                                    ],
                                    "type": "string",
                                    "description": "The type of the PIR/CIR rate. Default is Kbps. When set to percent, the value of the scheduler rate will be a percentage of the port rate. Percent is not supported on Generic Qos Profiles",
                                    "example": "kbps"
                                  },
                                  "schedulerType": {
                                    "title": "SchedulerType",
                                    "enum": [
                                      "Scheduler",
                                      "Arbiter"
                                    ],
                                    "type": "string",
                                    "description": "The type of the scheduler override. Default is Scheduler.",
                                    "example": "Scheduler"
                                  }
                                },
                                "description": "The parameters of a scheduler"
                              }
                            },
                            "description": "Tier1 Ingress QoS scheduler parameters"
                          }
                        },
                        "description": "Ingress Qos policy parameters associated with an endpoint."
                      },
                      "qosProfile": {
                        "type": "integer",
                        "description": "The ID reference to the Generic QoS Profile"
                      }
                    },
                    "description": "The set of QoS parameters for an endpoint. When modifying, these must all be retrieved and submitted together. Changes to qos-profile require the override entries to be set back to no override first."
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                }
              }
            }
          }
        }
      ],
      "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": "/addL3DciL3Endpoint"
      },
      "task": true
    },
    {
      "name": "addL3DciL3LoopbackEndpoint",
      "summary": "addL3DciL3LoopbackEndpoint",
      "description": "Add a L3 loop back endpoint to an L3 DCI service",
      "input": [
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the service to be modified: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}, \"readOnly\": \"boolean\", \"secondaryAddresses\": [{\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}], \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "title": "RequestLoopbackEndpointRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "LoopbackEndpointRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "example": "MAINTENANCE"
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "title": "CustomAttribute",
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "description": "A custom attribute"
                    },
                    "description": ""
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "title": "IpPrefix",
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "title": "Ipv4Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                      },
                      "ipv6Prefix": {
                        "title": "Ipv6Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                      }
                    },
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "items": {
                      "title": "IpPrefix",
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "title": "Ipv4Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                        },
                        "ipv6Prefix": {
                          "title": "Ipv6Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                        }
                      },
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    },
                    "description": "A list of secondary IP addresses assigned to the service loopBack endpoint"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "description": "The LoopBack endpoint definition"
              }
            }
          }
        }
      ],
      "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": "/addL3DciL3LoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "patchL3DciL3LoopbackEndpoint",
      "summary": "patchL3DciL3LoopbackEndpoint",
      "description": "Patch loop back endpoint of an L3 DCI service",
      "input": [
        {
          "name": "endpointUuid",
          "type": "string",
          "info": "The unique identifier of the service endpoint to be patched: string",
          "required": true,
          "schema": {
            "title": "endpointUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the L3 DCI Service to which the endpoint belongs: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The LoopBack endpoint definition: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"appId\": \"string\", \"customAttributes\": [{\"attributeName\": \"string\", \"attributeValue\": \"string\"}], \"customAttributesTemplateId\": \"string\", \"description\": \"string\", \"id\": \"string\", \"isHub\": \"boolean\", \"name\": \"string\", \"primaryAddress\": {\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}, \"readOnly\": \"boolean\", \"secondaryAddresses\": [{\"ipv4Prefix\": {\"string\": \"string\"}, \"ipv6Prefix\": {\"string\": \"string\"}}], \"vrfName\": \"string\"}}",
          "required": false,
          "schema": {
            "title": "RequestLoopbackEndpointRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "LoopbackEndpointRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "The current administrative state of the entity",
                    "example": "MAINTENANCE"
                  },
                  "appId": {
                    "type": "string",
                    "description": "The client-defined, custom Application ID for the entity"
                  },
                  "customAttributes": {
                    "type": "array",
                    "items": {
                      "title": "CustomAttribute",
                      "type": "object",
                      "properties": {
                        "attributeName": {
                          "type": "string",
                          "description": "custom attribute name"
                        },
                        "attributeValue": {
                          "type": "string",
                          "description": "custom attribute value"
                        }
                      },
                      "description": "A custom attribute"
                    },
                    "description": ""
                  },
                  "customAttributesTemplateId": {
                    "type": "string",
                    "description": "Specifies the identifier of the custom attributes template. The values specified in the request will override the values defined in the template."
                  },
                  "description": {
                    "type": "string",
                    "description": "A textual description of the endpoint."
                  },
                  "id": {
                    "type": "string",
                    "description": "The UUID of the port"
                  },
                  "isHub": {
                    "type": "boolean",
                    "description": "Specifies whether or not the loopback endpoint is a hub for a hub-and-spoke topology. This influences the automatic route-target and route-distinguisher generation for L3 VPRN service."
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of the endpoint"
                  },
                  "primaryAddress": {
                    "title": "IpPrefix",
                    "type": "object",
                    "properties": {
                      "ipv4Prefix": {
                        "title": "Ipv4Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                      },
                      "ipv6Prefix": {
                        "title": "Ipv6Prefix",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                      }
                    },
                    "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                  },
                  "readOnly": {
                    "type": "boolean",
                    "description": "Specifies whether or not this request is read-only"
                  },
                  "secondaryAddresses": {
                    "type": "array",
                    "items": {
                      "title": "IpPrefix",
                      "type": "object",
                      "properties": {
                        "ipv4Prefix": {
                          "title": "Ipv4Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv4-prefix type represents an IPv4 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 32. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The canonical format of an IPv4 prefix has all bits of the IPv4 address set to zero that are not part of the IPv4 prefix."
                        },
                        "ipv6Prefix": {
                          "title": "Ipv6Prefix",
                          "type": "object",
                          "properties": {
                            "string": {
                              "type": "string"
                            }
                          },
                          "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                        }
                      },
                      "description": "The ip-prefix type represents an IP prefix and is IP version neutral. The format of the textual representations implies the IP version."
                    },
                    "description": "A list of secondary IP addresses assigned to the service loopBack endpoint"
                  },
                  "vrfName": {
                    "type": "string",
                    "description": "The name of the VRF instance to which this spoke/hub endpoint belongs. Spoke/Hub endpoints with the VRF names will be provisioned on the same VRF instance. Name will be autogenerated if left empty. Only applicable to Hub and Spoke L3VPNs."
                  }
                },
                "description": "The LoopBack endpoint definition"
              }
            }
          }
        }
      ],
      "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": "/patchL3DciL3LoopbackEndpoint"
      },
      "task": true
    },
    {
      "name": "updateStitchL2Ext",
      "summary": "updateStitchL2Ext",
      "description": "Stitch a L2 Extension Service to a ELine or ELAN Service",
      "input": [
        {
          "name": "l2extServiceUuid",
          "type": "string",
          "info": "The unique identifier of the L2 Extension Service: string",
          "required": true,
          "schema": {
            "title": "l2extServiceUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceEndpointUuid",
          "type": "string",
          "info": "The unique identifier of the connected service endpoint: string",
          "required": true,
          "schema": {
            "title": "serviceEndpointUuid",
            "type": "string"
          }
        },
        {
          "name": "serviceUuid",
          "type": "string",
          "info": "The unique identifier of the L2 Service to stitch to: string",
          "required": true,
          "schema": {
            "title": "serviceUuid",
            "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": "/updateStitchL2Ext"
      },
      "task": true
    },
    {
      "name": "deleteTopologyReferencesByDomain",
      "summary": "deleteTopologyReferencesByDomain",
      "description": "Clean up topology references of all IP domains, or a specific IP domain (set networkId to -1 for all IP domains)",
      "input": [
        {
          "name": "networkId",
          "type": "string",
          "info": "UUID: An identifier for an IP domain/network, set to -1 for all IP domains: 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": "/deleteTopologyReferencesByDomain"
      },
      "task": true
    },
    {
      "name": "deleteTopologyReferencesByLink",
      "summary": "deleteTopologyReferencesByLink",
      "description": "Clean up topology references for a specific link identifier",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "UUID: An identifier for a link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "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": "/deleteTopologyReferencesByLink"
      },
      "task": true
    },
    {
      "name": "diagnoseLsp",
      "summary": "diagnoseLsp",
      "description": "LSP Diagnosis API to run additional calculations and return a result set that may aid in determining why an LSP is operationally down. Use cases that involved grouping or association such as Diversity or Bidirectionality may return limited results. Please note that this API is currently experimental and not yet comprehensive.",
      "input": [
        {
          "name": "lspPathId",
          "type": "string",
          "info": "ID: Unique LSP path identifier: string",
          "required": true,
          "schema": {
            "title": "lspPathId",
            "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": "/diagnoseLsp"
      },
      "task": true
    },
    {
      "name": "diagnosePath",
      "summary": "diagnosePath",
      "description": "Path Diagnosis API to invoke extra behaviour to try and determine why/what paths are found or not found. Please note that this API is currently experimental and not yet comprehensive.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination: {\"data\": {\"destinationAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"pathRequest\": {\"pathTeParams\": {\"adminGroupExcludeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"adminGroupIncludeAll\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"adminGroupIncludeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"diversity\": \"Must be one of [NO, NODE_STRICT_AND_SRLG, NODE_STRICT, LINK_LOOSE, LINK_STRICT_AND_SRLG, NODE_LOOSE, SRLG, LINK_STRICT]\", \"excludeRouteObjects\": [{\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}], \"explicitRouteStrategy\": \"Must be one of [LOOSE_HOP_ANYCAST_PREFERRED, ECMP, LOOSE_HOP_BSID_PREFERRED, STANDARD_BSID_PREFERRED, COMPRESSED, LOOSE_HOP, STANDARD]\", \"explicitRouteStrategyEcmpPreference\": \"Must be one of [ADJACENCY_SID, NODE_SID]\", \"includeRouteObjects\": \"object\", \"ipAddressTypeStrategy\": \"Must be one of [IPV6, IPV4, ANY]\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"msd\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": 123, \"reverseBandwidth\": 123}}, \"pathType\": \"Must be one of [SRTE, UNKNOWN, RSVP]\", \"secondaryDestinationAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"secondarySourceAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"sourceAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}}}",
          "required": false,
          "schema": {
            "title": "RequestPointToPointPathRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "PointToPointPathRequest",
                "required": [
                  "destinationAddress",
                  "sourceAddress"
                ],
                "type": "object",
                "properties": {
                  "destinationAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "pathRequest": {
                    "title": "PathRequest",
                    "type": "object",
                    "properties": {
                      "pathTeParams": {
                        "title": "PathTeParams",
                        "type": "object",
                        "properties": {
                          "adminGroupExcludeAny": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "adminGroupIncludeAll": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "adminGroupIncludeAny": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "bandwidth": {
                            "type": "integer",
                            "description": "Path bandwidth capacity. Units in Kbps"
                          },
                          "bidirectional": {
                            "title": "Bidirectional22",
                            "enum": [
                              "SYMMETRIC_LOOSE",
                              "NO",
                              "ASYMMETRIC_STRICT",
                              "ASYMMETRIC_LOOSE",
                              "ANY_REVERSE_ROUTE",
                              "SYMMETRIC_STRICT"
                            ],
                            "type": "string",
                            "description": "The Bidirectional Mode to be used in path computation. When any value other than Bidirectional.NO is applied, path calculation will perform a cost function evaluation for the links in the forward and reverse directions. When the objective is Star Weight, the forward and reverse values will used in a Max() function. For all other Objective types, the forward and reverse values will be used in an Average Function. For example, with an Objective of Latency or TE Metric, if the link in the forward direction has a value of 3, and the link in the reverse direction has a value of 7, the value of the link used during path search will be considered as a value of 5. When a disjoint value is provided other than None and Bidirectional is NO, the bidirectional value is interpreted as SYMMETRIC_LOOSE. When the explicit route strategy is ECMP, the bidirectional value is treated as SYMMETRIC_LOOSE - no support for strict bidirectional. If not provided, value will come from path profile or default to NO. Note that ASYMMETRIC_STRICT / ASYMMETRIC_LOOSE are not supported in this release.",
                            "example": "SYMMETRIC_LOOSE"
                          },
                          "diversity": {
                            "title": "Diversity",
                            "enum": [
                              "NO",
                              "NODE_STRICT_AND_SRLG",
                              "NODE_STRICT",
                              "LINK_LOOSE",
                              "LINK_STRICT_AND_SRLG",
                              "NODE_LOOSE",
                              "SRLG",
                              "LINK_STRICT"
                            ],
                            "type": "string",
                            "description": "The Disjoint Mode to be used in path computation. When the value is set as anything other than No then the bidirectional value is considered as SYMMETRIC_LOOSE unless explicitly set to something other than None. Note that NODE_LOOSE / LINK_LOOSE are not supported in this release and will return the same results as NODE_STRICT / LINK_STRICT. If not provided, value will come from path profile or default to NO.",
                            "example": "NO"
                          },
                          "excludeRouteObjects": {
                            "type": "array",
                            "items": {
                              "title": "IpAddress",
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "title": "Ipv4Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                },
                                "ipv6Address": {
                                  "title": "Ipv6Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                }
                              },
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            },
                            "description": "Excluded Route Objects. Path must not contain any of the entities which correspond to the IP Addresses in this set"
                          },
                          "explicitRouteStrategy": {
                            "title": "ExplicitRouteStrategy1",
                            "enum": [
                              "LOOSE_HOP_ANYCAST_PREFERRED",
                              "ECMP",
                              "LOOSE_HOP_BSID_PREFERRED",
                              "STANDARD_BSID_PREFERRED",
                              "COMPRESSED",
                              "LOOSE_HOP",
                              "STANDARD"
                            ],
                            "type": "string",
                            "description": "The strategy to use when computing the explicit route objects. The supported strategy options include STANDARD, LOOSE_HOP, LOOSE_HOP_ANYCAST_PREFERRED, LOOSE_HOP_BSID_PREFERRED, STANDARD_BSID_PREFERRED, COMPRESSED, ECMP. If not provided, value will come from path profile or default to STANDARD. NOTE: Explicit Route Strategy BSID Preferred or Loose hop BSID preferred may not return a viable path result. The algorithm will find and use existing binding SIDs in the topology but will not determine if new binding SIDs are required, and thus may ignore the MSD requirements of the request. Automatic Binding SID computation is only supported by Stateful Tunnel management and not supported in the path finder.",
                            "example": "LOOSE_HOP_ANYCAST_PREFERRED"
                          },
                          "explicitRouteStrategyEcmpPreference": {
                            "title": "ExplicitRouteStrategyEcmpPreference1",
                            "enum": [
                              "ADJACENCY_SID",
                              "NODE_SID"
                            ],
                            "type": "string",
                            "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO. If not provided, value will come from path profile or default to ADJACENCY_SID.",
                            "example": "ADJACENCY_SID"
                          },
                          "includeRouteObjects": {
                            "type": "object",
                            "additionalProperties": {
                              "title": "IroHop",
                              "required": [
                                "hopType",
                                "ipAddress"
                              ],
                              "type": "object",
                              "properties": {
                                "hopType": {
                                  "title": "HopType1",
                                  "enum": [
                                    "STRICT",
                                    "LOOSE",
                                    "UNKNOWN"
                                  ],
                                  "type": "string",
                                  "description": "The hop type, only strict or loose is supported",
                                  "example": "STRICT"
                                },
                                "ipAddress": {
                                  "title": "IpAddress",
                                  "type": "object",
                                  "properties": {
                                    "ipv4Address": {
                                      "title": "Ipv4Address",
                                      "type": "object",
                                      "properties": {
                                        "string": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                    },
                                    "ipv6Address": {
                                      "title": "Ipv6Address",
                                      "type": "object",
                                      "properties": {
                                        "string": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                    }
                                  },
                                  "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                                }
                              },
                              "description": "IRO hop"
                            }
                          },
                          "ipAddressTypeStrategy": {
                            "title": "IpAddressTypeStrategy",
                            "enum": [
                              "IPV6",
                              "IPV4",
                              "ANY"
                            ],
                            "type": "string",
                            "description": "Permitted IP Address Type",
                            "example": "IPV6"
                          },
                          "maxCost": {
                            "type": "integer",
                            "description": "Path maximum cost constraint"
                          },
                          "maxHops": {
                            "type": "integer",
                            "description": "Path maximum hops constraint. 0 and 255 means no limit."
                          },
                          "maxLatency": {
                            "type": "number",
                            "description": "Path maximum latency constraint (in microseconds)"
                          },
                          "maxTeMetric": {
                            "type": "integer",
                            "description": "Path maximum TE metric constraint"
                          },
                          "msd": {
                            "type": "integer",
                            "description": "Path maximum SID depth. The advertised MSD from the source node will be used if msd is set to 0"
                          },
                          "objective": {
                            "title": "Objective26",
                            "enum": [
                              "TE_METRIC",
                              "COST",
                              "DISTANCE",
                              "STAR_WEIGHT",
                              "LATENCY",
                              "HOPS"
                            ],
                            "type": "string",
                            "description": "Path metric objective, specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency, Hops, TE Metric and Star Weight are the supported values. If not provided, value will come from path profile or default to COST.",
                            "example": "TE_METRIC"
                          },
                          "pathProfileId": {
                            "type": "integer",
                            "description": "Path profile identifier. An identifier of a predefined profile. 0 means no path profile assigned. NOTE: Path diagnosis behaves like LSP diagnosis, the path profile takes precedence for constraints of [objective, bidirectional, diversity, includeRouteObjects, excludeRouteObjects, explicitRouteStrategy, explicitRouteStrategyEcmpPreference], and other individual path TE params will not be override by the path profile if non-default values are provided. But for the regular IP Path finding request, the individual Path TE params take precedence if values are provided to allow more tuning and customization, otherwise, values will come from path profile or set to default values."
                          },
                          "reverseBandwidth": {
                            "type": "integer",
                            "description": "Reverse Path bandwidth capacity. Units in Kbps"
                          }
                        },
                        "description": "Path tool parameters"
                      }
                    },
                    "description": "Path request contains path type and all the path tool TE parameters"
                  },
                  "pathType": {
                    "title": "PathType",
                    "enum": [
                      "SRTE",
                      "UNKNOWN",
                      "RSVP"
                    ],
                    "type": "string",
                    "description": "Path type denoting signaling type",
                    "example": "SRTE"
                  },
                  "secondaryDestinationAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "secondarySourceAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "sourceAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  }
                },
                "description": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination"
              }
            }
          }
        }
      ],
      "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": "/diagnosePath"
      },
      "task": true
    },
    {
      "name": "addMultipointPort",
      "summary": "addMultipointPort",
      "description": "Add a port to a multipoint link",
      "input": [
        {
          "name": "multipointLinkId",
          "type": "string",
          "info": "The unique identifier of the multipoint link to be modified: string",
          "required": true,
          "schema": {
            "title": "multipointLinkId",
            "type": "string"
          }
        },
        {
          "name": "portId",
          "type": "string",
          "info": "The unique identifier of the port to add: string",
          "required": true,
          "schema": {
            "title": "portId",
            "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": "/addMultipointPort"
      },
      "task": true
    },
    {
      "name": "removeMultipointPort",
      "summary": "removeMultipointPort",
      "description": "Remove a port to a multipoint link",
      "input": [
        {
          "name": "multipointLinkId",
          "type": "string",
          "info": "The unique identifier of the multipoint link to be modified: string",
          "required": true,
          "schema": {
            "title": "multipointLinkId",
            "type": "string"
          }
        },
        {
          "name": "portId",
          "type": "string",
          "info": "The unique identifier of the port to remove: string",
          "required": true,
          "schema": {
            "title": "portId",
            "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": "/removeMultipointPort"
      },
      "task": true
    },
    {
      "name": "deleteMultipoint",
      "summary": "deleteMultipoint",
      "description": "Delete a multipoint link that was defined in NSP",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "The unique identifier for the link to be deleted: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "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": "/deleteMultipoint"
      },
      "task": true
    },
    {
      "name": "createMultipoint",
      "summary": "createMultipoint",
      "description": "Define a multipoint link in NSP between multiple ports",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "The name of the multipoint link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "The unique identifiers for the connected ports: {\"data\": \"array\"}",
          "required": false,
          "schema": {
            "title": "RequestListstring",
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": ""
              }
            }
          }
        }
      ],
      "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": "/createMultipoint"
      },
      "task": true
    },
    {
      "name": "getMultipoint",
      "summary": "getMultipoint",
      "description": "Find a multipoint link by a unique identifier",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "The unique identifier for the query: string (uuid)",
          "required": true,
          "schema": {
            "title": "linkId",
            "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": "/getMultipoint"
      },
      "task": true
    },
    {
      "name": "getMultipoints",
      "summary": "getMultipoints",
      "description": "Query all multipoint links",
      "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": "/getMultipoints"
      },
      "task": true
    },
    {
      "name": "getAllConnectionProfile",
      "summary": "getAllConnectionProfile",
      "description": "Query all connection profile objects",
      "input": [
        {
          "name": "neId",
          "type": "string",
          "info": "The unique identifier of the network element to be queried: string",
          "required": true,
          "schema": {
            "title": "neId",
            "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": "/getAllConnectionProfile"
      },
      "task": true
    },
    {
      "name": "createTriggerTtzAlgorithm",
      "summary": "createTriggerTtzAlgorithm",
      "description": "Trigger the Transport Tech Zone Topology computation",
      "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": "/createTriggerTtzAlgorithm"
      },
      "task": true
    },
    {
      "name": "getSRPolicies",
      "summary": "getSRPolicies",
      "description": "Get SR Policies",
      "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": "/getSRPolicies"
      },
      "task": true
    },
    {
      "name": "createSRPolicy",
      "summary": "createSRPolicy",
      "description": "Create SR Policies",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "srPoliciesConfigRequests: {\"data\": [{\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"candidatePathsConfig\": {\"candidatePath\": \"object\"}, \"color\": 123, \"description\": \"string\", \"endpoint\": \"string\", \"headend\": \"string\", \"name\": \"string\", \"policyParamsConfig\": {\"policyProperties\": {\"priority\": 123}}}]}",
          "required": true,
          "schema": {
            "title": "RequestListSrPoliciesConfigRequest",
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "title": "SrPoliciesConfigRequest",
                  "required": [
                    "color",
                    "endpoint",
                    "headend"
                  ],
                  "type": "object",
                  "properties": {
                    "adminState": {
                      "title": "AdminState41",
                      "enum": [
                        "MAINTENANCE",
                        "DOWN",
                        "UP"
                      ],
                      "type": "string",
                      "description": "An enum for administrative state of an SR policy",
                      "example": "MAINTENANCE"
                    },
                    "candidatePathsConfig": {
                      "title": "CandidatePathsConfig",
                      "type": "object",
                      "properties": {
                        "candidatePath": {
                          "type": "object",
                          "additionalProperties": {
                            "title": "CandidatePathsConfigCandidatePath",
                            "required": [
                              "distinguisher",
                              "preference",
                              "protocolOrigin"
                            ],
                            "type": "object",
                            "properties": {
                              "adminState": {
                                "title": "AdminState9",
                                "enum": [
                                  "MAINTENANCE",
                                  "DOWN",
                                  "UP"
                                ],
                                "type": "string",
                                "description": "An enum for administrative state of a Candidate Path",
                                "example": "MAINTENANCE"
                              },
                              "candidatePathConfigType": {
                                "title": "CandidatePathConfigType",
                                "type": "object",
                                "properties": {
                                  "dynamic": {
                                    "title": "Dynamic",
                                    "type": "object",
                                    "properties": {
                                      "dynamicPathProperties": {
                                        "title": "DynamicPathProperties",
                                        "type": "object",
                                        "properties": {
                                          "bounds": {
                                            "title": "Bounds",
                                            "type": "object",
                                            "properties": {
                                              "igpMetricBound": {
                                                "type": "integer",
                                                "description": "Path is invalid if its IGP metric exceeds this value"
                                              },
                                              "latencyMetricBound": {
                                                "type": "integer",
                                                "description": "Path is invalid if its latency exceeds this value"
                                              },
                                              "maxHops": {
                                                "type": "integer",
                                                "description": "Path maximum hops constraint. 0 and 255 means no limit."
                                              },
                                              "segmentBound": {
                                                "type": "integer",
                                                "description": "Path is invalid if it has more segments than this value"
                                              },
                                              "teMetricBound": {
                                                "type": "integer",
                                                "description": "Path is invalid if its TE metric exceeds this value"
                                              }
                                            },
                                            "description": "Upper-bound constraints on the computed dynamic path"
                                          },
                                          "constraints": {
                                            "title": "Constraints",
                                            "type": "object",
                                            "properties": {
                                              "affinities": {
                                                "title": "Affinities",
                                                "type": "object",
                                                "properties": {
                                                  "excludeAny": {
                                                    "title": "AdminGroups",
                                                    "type": "object",
                                                    "properties": {
                                                      "adminGroup": {
                                                        "title": "AdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Administrative group/Resource class/Color."
                                                      },
                                                      "extendedAdminGroup": {
                                                        "title": "ExtendedAdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Extended administrative group/Resource class/Color."
                                                      }
                                                    },
                                                    "description": "TE administrative group derived type"
                                                  },
                                                  "includeAll": {
                                                    "title": "AdminGroups",
                                                    "type": "object",
                                                    "properties": {
                                                      "adminGroup": {
                                                        "title": "AdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Administrative group/Resource class/Color."
                                                      },
                                                      "extendedAdminGroup": {
                                                        "title": "ExtendedAdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Extended administrative group/Resource class/Color."
                                                      }
                                                    },
                                                    "description": "TE administrative group derived type"
                                                  },
                                                  "includeAny": {
                                                    "title": "AdminGroups",
                                                    "type": "object",
                                                    "properties": {
                                                      "adminGroup": {
                                                        "title": "AdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Administrative group/Resource class/Color."
                                                      },
                                                      "extendedAdminGroup": {
                                                        "title": "ExtendedAdminGroup",
                                                        "type": "object",
                                                        "properties": {
                                                          "binary": {
                                                            "type": "string"
                                                          }
                                                        },
                                                        "description": "Extended administrative group/Resource class/Color."
                                                      }
                                                    },
                                                    "description": "TE administrative group derived type"
                                                  }
                                                },
                                                "description": "Affinity constraints on the computed dynamic path"
                                              }
                                            },
                                            "description": "Constraints for the dynamic path computation"
                                          },
                                          "objective": {
                                            "title": "Objective3",
                                            "enum": [
                                              "TE_METRIC",
                                              "COST",
                                              "DISTANCE",
                                              "STAR_WEIGHT",
                                              "LATENCY",
                                              "HOPS"
                                            ],
                                            "type": "string",
                                            "description": "Segment-list optimization objectives. Overridden by objective in path-profile",
                                            "example": "TE_METRIC"
                                          },
                                          "pathProfileId": {
                                            "type": "integer",
                                            "description": "Path profile identifier"
                                          },
                                          "sidDataplaneType": {
                                            "title": "SidDataplaneType",
                                            "enum": [
                                              "mpls",
                                              "srv6"
                                            ],
                                            "type": "string",
                                            "description": "The dataplane type for the sid",
                                            "example": "mpls"
                                          }
                                        },
                                        "description": "Dynamic path properties of the Candidate Path"
                                      }
                                    },
                                    "description": "Candidate Path with dynamic computed segment-lists configuration parameters"
                                  },
                                  "explicit": {
                                    "title": "Explicit",
                                    "type": "object",
                                    "properties": {
                                      "segmentListsConfigRequest": {
                                        "title": "SegmentListsConfigRequest",
                                        "type": "object",
                                        "properties": {
                                          "segmentListsConfig": {
                                            "title": "SegmentListsConfig",
                                            "type": "object",
                                            "properties": {
                                              "segmentList": {
                                                "type": "array",
                                                "items": {
                                                  "title": "SegmentListsConfigSegmentList",
                                                  "type": "object",
                                                  "properties": {
                                                    "name": {
                                                      "type": "string",
                                                      "description": "Segment-list name"
                                                    },
                                                    "segmentsConfig": {
                                                      "title": "SegmentsConfig",
                                                      "type": "object",
                                                      "properties": {
                                                        "segment": {
                                                          "type": "object",
                                                          "additionalProperties": {
                                                            "title": "SegmentProperties",
                                                            "type": "object",
                                                            "properties": {
                                                              "segmentTypes": {
                                                                "title": "SegmentTypes",
                                                                "type": "object",
                                                                "properties": {
                                                                  "segmentType1": {
                                                                    "title": "SegmentType1",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "sidValue": {
                                                                        "title": "MplsLabel",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "int32": {
                                                                            "type": "integer"
                                                                          }
                                                                        },
                                                                        "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                                                      }
                                                                    },
                                                                    "description": "Segment declared by MPLS label"
                                                                  },
                                                                  "segmentType10": {
                                                                    "title": "SegmentType10",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "localInterfaceIdentifier": {
                                                                        "type": "integer",
                                                                        "description": "Local interface identifier"
                                                                      },
                                                                      "localIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      },
                                                                      "remoteInterfaceIdentifier": {
                                                                        "type": "integer",
                                                                        "description": "Remote interface identifier"
                                                                      },
                                                                      "remoteIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SRv6"
                                                                  },
                                                                  "segmentType11": {
                                                                    "title": "SegmentType11",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "localIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      },
                                                                      "remoteIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SRv6"
                                                                  },
                                                                  "segmentType2": {
                                                                    "title": "SegmentType2",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "sidValue": {
                                                                        "title": "Srv6Sid",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "ipv6Prefix": {
                                                                            "title": "Ipv6Prefix",
                                                                            "type": "object",
                                                                            "properties": {
                                                                              "string": {
                                                                                "type": "string"
                                                                              }
                                                                            },
                                                                            "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                                                          }
                                                                        },
                                                                        "description": "This type defines a SID value in SRv6"
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by SRv6 SID value"
                                                                  },
                                                                  "segmentType3": {
                                                                    "title": "SegmentType3",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "algorithm": {
                                                                        "type": "integer",
                                                                        "description": "Prefix SID algorithm identifier"
                                                                      },
                                                                      "ipv4Address": {
                                                                        "title": "Ipv4Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv4 Prefix with optional SR Algorithm"
                                                                  },
                                                                  "segmentType4": {
                                                                    "title": "SegmentType4",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "algorithm": {
                                                                        "type": "integer",
                                                                        "description": "Prefix SID algorithm identifier"
                                                                      },
                                                                      "ipv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SR-MPLS"
                                                                  },
                                                                  "segmentType5": {
                                                                    "title": "SegmentType5",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "interfaceIdentifier": {
                                                                        "type": "integer",
                                                                        "description": "local interface identifier"
                                                                      },
                                                                      "ipv4Address": {
                                                                        "title": "Ipv4Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv4 Prefix with Local Interface ID"
                                                                  },
                                                                  "segmentType6": {
                                                                    "title": "SegmentType6",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "localIpv4Address": {
                                                                        "title": "Ipv4Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                      },
                                                                      "remoteIpv4Address": {
                                                                        "title": "Ipv4Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                      }
                                                                    },
                                                                    "description": "Segment declared by IPv4 Addresses for link endpoints as Local, Remote pair"
                                                                  },
                                                                  "segmentType7": {
                                                                    "title": "SegmentType7",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "localInterfaceIdentifier": {
                                                                        "type": "integer",
                                                                        "description": "Local interface identifier"
                                                                      },
                                                                      "localIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      },
                                                                      "remoteInterfaceIdentifier": {
                                                                        "type": "integer",
                                                                        "description": "Remote interface identifier"
                                                                      },
                                                                      "remoteIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SR-MPLS"
                                                                  },
                                                                  "segmentType8": {
                                                                    "title": "SegmentType8",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "localIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      },
                                                                      "remoteIpv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SR-MPLS"
                                                                  },
                                                                  "segmentType9": {
                                                                    "title": "SegmentType9",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "algorithm": {
                                                                        "type": "integer",
                                                                        "description": "Prefix SID algorithm identifier"
                                                                      },
                                                                      "ipv6Address": {
                                                                        "title": "Ipv6Address",
                                                                        "type": "object",
                                                                        "properties": {
                                                                          "string": {
                                                                            "type": "string"
                                                                          }
                                                                        },
                                                                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                      }
                                                                    },
                                                                    "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SRv6"
                                                                  }
                                                                },
                                                                "description": "Types of segments"
                                                              },
                                                              "type": {
                                                                "title": "Type",
                                                                "enum": [
                                                                  "segment_type_7",
                                                                  "segment_type_8",
                                                                  "segment_type_5",
                                                                  "segment_type_6",
                                                                  "segment_type_3",
                                                                  "segment_type_4",
                                                                  "segment_type_1",
                                                                  "segment_type_2",
                                                                  "segment_type_10",
                                                                  "segment_type_11",
                                                                  "segment_type_9"
                                                                ],
                                                                "type": "string",
                                                                "description": "Segment type",
                                                                "example": "segment_type_7"
                                                              },
                                                              "validate": {
                                                                "type": "boolean",
                                                                "description": "Unsupported -Indicates whether the segment should be validated. The default applies to all segments other than the first segment. For the first segment, validation is always done"
                                                              }
                                                            },
                                                            "description": "Segment properties grouping"
                                                          }
                                                        }
                                                      },
                                                      "description": "Segments for given segment list"
                                                    },
                                                    "weight": {
                                                      "type": "integer",
                                                      "description": "Segment-list weighted loadshare. Default weight is 1. Formula: bandwidth * weight / sumOfWeight"
                                                    }
                                                  }
                                                },
                                                "description": ""
                                              }
                                            },
                                            "description": "Segment-lists properties"
                                          }
                                        },
                                        "description": "Segment lists grouping"
                                      }
                                    },
                                    "description": "Candidate Path with explicitly defined set/s of segment-lists configuration parameters"
                                  }
                                },
                                "description": "Candidate Path config type grouping"
                              },
                              "candidatePathProperties": {
                                "title": "CandidatePathProperties",
                                "type": "object",
                                "properties": {
                                  "bandwidth": {
                                    "type": "integer",
                                    "description": "Bandwidth capacity. Unit kbps. For a candidate path with multiple segment-lists, the bandiwdth value is applied to each segment list relative to the weight value associated to the segment-list"
                                  },
                                  "bsid": {
                                    "title": "Bsid",
                                    "type": "object",
                                    "properties": {
                                      "bindingSid_properties": {
                                        "title": "BindingSid_properties",
                                        "type": "object",
                                        "properties": {
                                          "dataplane": {
                                            "title": "Dataplane",
                                            "enum": [
                                              "mpls",
                                              "srv6"
                                            ],
                                            "type": "string",
                                            "description": "Binding SID dataplane type",
                                            "example": "mpls"
                                          },
                                          "value": {
                                            "title": "SidValueType",
                                            "type": "object",
                                            "properties": {
                                              "mplsLabel": {
                                                "title": "MplsLabel",
                                                "type": "object",
                                                "properties": {
                                                  "int32": {
                                                    "type": "integer"
                                                  }
                                                },
                                                "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                              },
                                              "srv6Sid": {
                                                "title": "Srv6Sid",
                                                "type": "object",
                                                "properties": {
                                                  "ipv6Prefix": {
                                                    "title": "Ipv6Prefix",
                                                    "type": "object",
                                                    "properties": {
                                                      "string": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                                  }
                                                },
                                                "description": "This type defines a SID value in SRv6"
                                              }
                                            },
                                            "description": "The SID value type. The only supported value is mpls-label"
                                          }
                                        },
                                        "description": "Binding SID properties grouping"
                                      }
                                    }
                                  }
                                },
                                "description": "Candidate Path properties grouping"
                              },
                              "description": {
                                "type": "string",
                                "description": "Candidate Path description"
                              },
                              "distinguisher": {
                                "type": "integer",
                                "description": "Distinguisher in the context of BGP with combined with endpoint and color must be unique"
                              },
                              "name": {
                                "type": "string",
                                "description": "Candidate Path name"
                              },
                              "originator": {
                                "type": "string",
                                "description": "NOTE:NRC-P Server will ignore user provided value and fill in its own value. Identifier (concatenation of ASN and node-address) of the node that signalled/instantiated the Candidate Path on headend."
                              },
                              "preference": {
                                "type": "integer",
                                "description": "The preference of the candidate path is used to select the best candidate path for an SR Policy"
                              },
                              "protocolOrigin": {
                                "title": "ProtocolOrigin",
                                "enum": [
                                  "pcep",
                                  "bgp",
                                  "node_configuration",
                                  "bgp_discovered"
                                ],
                                "type": "string",
                                "description": "Instantiation mechanism used to create the Candidate Path",
                                "example": "pcep"
                              }
                            }
                          }
                        }
                      },
                      "description": "SR Policy Candidate Path(s)"
                    },
                    "color": {
                      "type": "integer",
                      "description": "Color associated with the policy"
                    },
                    "description": {
                      "type": "string",
                      "description": "Description of the policy"
                    },
                    "endpoint": {
                      "type": "string",
                      "description": "Policy end point IP address"
                    },
                    "headend": {
                      "type": "string",
                      "description": "Policy headend IP address"
                    },
                    "name": {
                      "type": "string",
                      "description": "SR Policy name"
                    },
                    "policyParamsConfig": {
                      "title": "SrPoliciesConfigRequestPolicyParamsConfig",
                      "type": "object",
                      "properties": {
                        "policyProperties": {
                          "title": "PolicyProperties",
                          "type": "object",
                          "properties": {
                            "priority": {
                              "type": "integer",
                              "description": "Unsupported - Priority considered when policy is recomputed due to topology changes. Range from 0 to 255. Value 0 is the highest priority"
                            }
                          },
                          "description": "Sr Policy properties"
                        }
                      },
                      "description": "Policy parameters configuration"
                    }
                  }
                },
                "description": ""
              }
            }
          }
        }
      ],
      "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": "/createSRPolicy"
      },
      "task": true
    },
    {
      "name": "createCandidatePathResignal",
      "summary": "createCandidatePathResignal",
      "description": "Trigger resignal on a Candidate Path",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the Candidate Path: string",
          "required": true,
          "schema": {
            "title": "id",
            "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": "/createCandidatePathResignal"
      },
      "task": true
    },
    {
      "name": "patchCandidatePathAdmin",
      "summary": "patchCandidatePathAdmin",
      "description": "Patch a Candidate Path admin status",
      "input": [
        {
          "name": "adminState",
          "type": "string",
          "info": "Candidate path administrative state, UP for enabled, DOWN for disabled, Maintenance is not supported: Must be one of [MAINTENANCE, DOWN, UP]",
          "required": true,
          "schema": {
            "title": "adminState",
            "type": "string"
          }
        },
        {
          "name": "candidatePathId",
          "type": "string",
          "info": "The unique identifier of the Candidate Path: string",
          "required": true,
          "schema": {
            "title": "candidatePathId",
            "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": "/patchCandidatePathAdmin"
      },
      "task": true
    },
    {
      "name": "updateCandidatePaths",
      "summary": "updateCandidatePaths",
      "description": "Update Candidate Path. This request requires Candidate Path to be shutdown first. Add/Delete segment list(s) on the Candidate Path can be utilized for this request.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the Candidate Path: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "candidatePathsUpdateRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"description\": \"string\", \"paramsConfig\": {\"candidatePathConfigType\": {\"dynamic\": {\"dynamicPathProperties\": {\"bounds\": {\"igpMetricBound\": 123, \"latencyMetricBound\": 123, \"maxHops\": 123, \"segmentBound\": 123, \"teMetricBound\": 123}, \"constraints\": {\"affinities\": {\"excludeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"includeAll\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"includeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}}}, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": 123, \"sidDataplaneType\": \"Must be one of [mpls, srv6]\"}}, \"explicit\": {\"segmentListsConfigRequest\": {\"segmentListsConfig\": {\"segmentList\": [{\"name\": \"string\", \"segmentsConfig\": {\"segment\": \"object\"}, \"weight\": 123}]}}}}, \"candidatePathProperties\": {\"bandwidth\": 123, \"bsid\": {\"bindingSid_properties\": {\"dataplane\": \"Must be one of [mpls, srv6]\", \"value\": {\"mplsLabel\": {\"int32\": 123}, \"srv6Sid\": {\"ipv6Prefix\": {\"string\": \"string\"}}}}}}}, \"preference\": 123}}",
          "required": true,
          "schema": {
            "title": "RequestCandidatePathsUpdateRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "CandidatePathsUpdateRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState9",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "An enum for administrative state of a Candidate Path",
                    "example": "MAINTENANCE"
                  },
                  "description": {
                    "type": "string",
                    "description": "Description for Candidate Path"
                  },
                  "paramsConfig": {
                    "title": "ParamsConfig",
                    "type": "object",
                    "properties": {
                      "candidatePathConfigType": {
                        "title": "CandidatePathConfigType",
                        "type": "object",
                        "properties": {
                          "dynamic": {
                            "title": "Dynamic",
                            "type": "object",
                            "properties": {
                              "dynamicPathProperties": {
                                "title": "DynamicPathProperties",
                                "type": "object",
                                "properties": {
                                  "bounds": {
                                    "title": "Bounds",
                                    "type": "object",
                                    "properties": {
                                      "igpMetricBound": {
                                        "type": "integer",
                                        "description": "Path is invalid if its IGP metric exceeds this value"
                                      },
                                      "latencyMetricBound": {
                                        "type": "integer",
                                        "description": "Path is invalid if its latency exceeds this value"
                                      },
                                      "maxHops": {
                                        "type": "integer",
                                        "description": "Path maximum hops constraint. 0 and 255 means no limit."
                                      },
                                      "segmentBound": {
                                        "type": "integer",
                                        "description": "Path is invalid if it has more segments than this value"
                                      },
                                      "teMetricBound": {
                                        "type": "integer",
                                        "description": "Path is invalid if its TE metric exceeds this value"
                                      }
                                    },
                                    "description": "Upper-bound constraints on the computed dynamic path"
                                  },
                                  "constraints": {
                                    "title": "Constraints",
                                    "type": "object",
                                    "properties": {
                                      "affinities": {
                                        "title": "Affinities",
                                        "type": "object",
                                        "properties": {
                                          "excludeAny": {
                                            "title": "AdminGroups",
                                            "type": "object",
                                            "properties": {
                                              "adminGroup": {
                                                "title": "AdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Administrative group/Resource class/Color."
                                              },
                                              "extendedAdminGroup": {
                                                "title": "ExtendedAdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Extended administrative group/Resource class/Color."
                                              }
                                            },
                                            "description": "TE administrative group derived type"
                                          },
                                          "includeAll": {
                                            "title": "AdminGroups",
                                            "type": "object",
                                            "properties": {
                                              "adminGroup": {
                                                "title": "AdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Administrative group/Resource class/Color."
                                              },
                                              "extendedAdminGroup": {
                                                "title": "ExtendedAdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Extended administrative group/Resource class/Color."
                                              }
                                            },
                                            "description": "TE administrative group derived type"
                                          },
                                          "includeAny": {
                                            "title": "AdminGroups",
                                            "type": "object",
                                            "properties": {
                                              "adminGroup": {
                                                "title": "AdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Administrative group/Resource class/Color."
                                              },
                                              "extendedAdminGroup": {
                                                "title": "ExtendedAdminGroup",
                                                "type": "object",
                                                "properties": {
                                                  "binary": {
                                                    "type": "string"
                                                  }
                                                },
                                                "description": "Extended administrative group/Resource class/Color."
                                              }
                                            },
                                            "description": "TE administrative group derived type"
                                          }
                                        },
                                        "description": "Affinity constraints on the computed dynamic path"
                                      }
                                    },
                                    "description": "Constraints for the dynamic path computation"
                                  },
                                  "objective": {
                                    "title": "Objective3",
                                    "enum": [
                                      "TE_METRIC",
                                      "COST",
                                      "DISTANCE",
                                      "STAR_WEIGHT",
                                      "LATENCY",
                                      "HOPS"
                                    ],
                                    "type": "string",
                                    "description": "Segment-list optimization objectives. Overridden by objective in path-profile",
                                    "example": "TE_METRIC"
                                  },
                                  "pathProfileId": {
                                    "type": "integer",
                                    "description": "Path profile identifier"
                                  },
                                  "sidDataplaneType": {
                                    "title": "SidDataplaneType",
                                    "enum": [
                                      "mpls",
                                      "srv6"
                                    ],
                                    "type": "string",
                                    "description": "The dataplane type for the sid",
                                    "example": "mpls"
                                  }
                                },
                                "description": "Dynamic path properties of the Candidate Path"
                              }
                            },
                            "description": "Candidate Path with dynamic computed segment-lists configuration parameters"
                          },
                          "explicit": {
                            "title": "Explicit",
                            "type": "object",
                            "properties": {
                              "segmentListsConfigRequest": {
                                "title": "SegmentListsConfigRequest",
                                "type": "object",
                                "properties": {
                                  "segmentListsConfig": {
                                    "title": "SegmentListsConfig",
                                    "type": "object",
                                    "properties": {
                                      "segmentList": {
                                        "type": "array",
                                        "items": {
                                          "title": "SegmentListsConfigSegmentList",
                                          "type": "object",
                                          "properties": {
                                            "name": {
                                              "type": "string",
                                              "description": "Segment-list name"
                                            },
                                            "segmentsConfig": {
                                              "title": "SegmentsConfig",
                                              "type": "object",
                                              "properties": {
                                                "segment": {
                                                  "type": "object",
                                                  "additionalProperties": {
                                                    "title": "SegmentProperties",
                                                    "type": "object",
                                                    "properties": {
                                                      "segmentTypes": {
                                                        "title": "SegmentTypes",
                                                        "type": "object",
                                                        "properties": {
                                                          "segmentType1": {
                                                            "title": "SegmentType1",
                                                            "type": "object",
                                                            "properties": {
                                                              "sidValue": {
                                                                "title": "MplsLabel",
                                                                "type": "object",
                                                                "properties": {
                                                                  "int32": {
                                                                    "type": "integer"
                                                                  }
                                                                },
                                                                "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                                              }
                                                            },
                                                            "description": "Segment declared by MPLS label"
                                                          },
                                                          "segmentType10": {
                                                            "title": "SegmentType10",
                                                            "type": "object",
                                                            "properties": {
                                                              "localInterfaceIdentifier": {
                                                                "type": "integer",
                                                                "description": "Local interface identifier"
                                                              },
                                                              "localIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              },
                                                              "remoteInterfaceIdentifier": {
                                                                "type": "integer",
                                                                "description": "Remote interface identifier"
                                                              },
                                                              "remoteIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SRv6"
                                                          },
                                                          "segmentType11": {
                                                            "title": "SegmentType11",
                                                            "type": "object",
                                                            "properties": {
                                                              "localIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              },
                                                              "remoteIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SRv6"
                                                          },
                                                          "segmentType2": {
                                                            "title": "SegmentType2",
                                                            "type": "object",
                                                            "properties": {
                                                              "sidValue": {
                                                                "title": "Srv6Sid",
                                                                "type": "object",
                                                                "properties": {
                                                                  "ipv6Prefix": {
                                                                    "title": "Ipv6Prefix",
                                                                    "type": "object",
                                                                    "properties": {
                                                                      "string": {
                                                                        "type": "string"
                                                                      }
                                                                    },
                                                                    "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                                                  }
                                                                },
                                                                "description": "This type defines a SID value in SRv6"
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by SRv6 SID value"
                                                          },
                                                          "segmentType3": {
                                                            "title": "SegmentType3",
                                                            "type": "object",
                                                            "properties": {
                                                              "algorithm": {
                                                                "type": "integer",
                                                                "description": "Prefix SID algorithm identifier"
                                                              },
                                                              "ipv4Address": {
                                                                "title": "Ipv4Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv4 Prefix with optional SR Algorithm"
                                                          },
                                                          "segmentType4": {
                                                            "title": "SegmentType4",
                                                            "type": "object",
                                                            "properties": {
                                                              "algorithm": {
                                                                "type": "integer",
                                                                "description": "Prefix SID algorithm identifier"
                                                              },
                                                              "ipv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SR-MPLS"
                                                          },
                                                          "segmentType5": {
                                                            "title": "SegmentType5",
                                                            "type": "object",
                                                            "properties": {
                                                              "interfaceIdentifier": {
                                                                "type": "integer",
                                                                "description": "local interface identifier"
                                                              },
                                                              "ipv4Address": {
                                                                "title": "Ipv4Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv4 Prefix with Local Interface ID"
                                                          },
                                                          "segmentType6": {
                                                            "title": "SegmentType6",
                                                            "type": "object",
                                                            "properties": {
                                                              "localIpv4Address": {
                                                                "title": "Ipv4Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                              },
                                                              "remoteIpv4Address": {
                                                                "title": "Ipv4Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                              }
                                                            },
                                                            "description": "Segment declared by IPv4 Addresses for link endpoints as Local, Remote pair"
                                                          },
                                                          "segmentType7": {
                                                            "title": "SegmentType7",
                                                            "type": "object",
                                                            "properties": {
                                                              "localInterfaceIdentifier": {
                                                                "type": "integer",
                                                                "description": "Local interface identifier"
                                                              },
                                                              "localIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              },
                                                              "remoteInterfaceIdentifier": {
                                                                "type": "integer",
                                                                "description": "Remote interface identifier"
                                                              },
                                                              "remoteIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SR-MPLS"
                                                          },
                                                          "segmentType8": {
                                                            "title": "SegmentType8",
                                                            "type": "object",
                                                            "properties": {
                                                              "localIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              },
                                                              "remoteIpv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SR-MPLS"
                                                          },
                                                          "segmentType9": {
                                                            "title": "SegmentType9",
                                                            "type": "object",
                                                            "properties": {
                                                              "algorithm": {
                                                                "type": "integer",
                                                                "description": "Prefix SID algorithm identifier"
                                                              },
                                                              "ipv6Address": {
                                                                "title": "Ipv6Address",
                                                                "type": "object",
                                                                "properties": {
                                                                  "string": {
                                                                    "type": "string"
                                                                  }
                                                                },
                                                                "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                              }
                                                            },
                                                            "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SRv6"
                                                          }
                                                        },
                                                        "description": "Types of segments"
                                                      },
                                                      "type": {
                                                        "title": "Type",
                                                        "enum": [
                                                          "segment_type_7",
                                                          "segment_type_8",
                                                          "segment_type_5",
                                                          "segment_type_6",
                                                          "segment_type_3",
                                                          "segment_type_4",
                                                          "segment_type_1",
                                                          "segment_type_2",
                                                          "segment_type_10",
                                                          "segment_type_11",
                                                          "segment_type_9"
                                                        ],
                                                        "type": "string",
                                                        "description": "Segment type",
                                                        "example": "segment_type_7"
                                                      },
                                                      "validate": {
                                                        "type": "boolean",
                                                        "description": "Unsupported -Indicates whether the segment should be validated. The default applies to all segments other than the first segment. For the first segment, validation is always done"
                                                      }
                                                    },
                                                    "description": "Segment properties grouping"
                                                  }
                                                }
                                              },
                                              "description": "Segments for given segment list"
                                            },
                                            "weight": {
                                              "type": "integer",
                                              "description": "Segment-list weighted loadshare. Default weight is 1. Formula: bandwidth * weight / sumOfWeight"
                                            }
                                          }
                                        },
                                        "description": ""
                                      }
                                    },
                                    "description": "Segment-lists properties"
                                  }
                                },
                                "description": "Segment lists grouping"
                              }
                            },
                            "description": "Candidate Path with explicitly defined set/s of segment-lists configuration parameters"
                          }
                        },
                        "description": "Candidate Path config type grouping"
                      },
                      "candidatePathProperties": {
                        "title": "CandidatePathProperties",
                        "type": "object",
                        "properties": {
                          "bandwidth": {
                            "type": "integer",
                            "description": "Bandwidth capacity. Unit kbps. For a candidate path with multiple segment-lists, the bandiwdth value is applied to each segment list relative to the weight value associated to the segment-list"
                          },
                          "bsid": {
                            "title": "Bsid",
                            "type": "object",
                            "properties": {
                              "bindingSid_properties": {
                                "title": "BindingSid_properties",
                                "type": "object",
                                "properties": {
                                  "dataplane": {
                                    "title": "Dataplane",
                                    "enum": [
                                      "mpls",
                                      "srv6"
                                    ],
                                    "type": "string",
                                    "description": "Binding SID dataplane type",
                                    "example": "mpls"
                                  },
                                  "value": {
                                    "title": "SidValueType",
                                    "type": "object",
                                    "properties": {
                                      "mplsLabel": {
                                        "title": "MplsLabel",
                                        "type": "object",
                                        "properties": {
                                          "int32": {
                                            "type": "integer"
                                          }
                                        },
                                        "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                      },
                                      "srv6Sid": {
                                        "title": "Srv6Sid",
                                        "type": "object",
                                        "properties": {
                                          "ipv6Prefix": {
                                            "title": "Ipv6Prefix",
                                            "type": "object",
                                            "properties": {
                                              "string": {
                                                "type": "string"
                                              }
                                            },
                                            "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                          }
                                        },
                                        "description": "This type defines a SID value in SRv6"
                                      }
                                    },
                                    "description": "The SID value type. The only supported value is mpls-label"
                                  }
                                },
                                "description": "Binding SID properties grouping"
                              }
                            }
                          }
                        },
                        "description": "Candidate Path properties grouping"
                      }
                    },
                    "description": "Candidate Path parameters configuration"
                  },
                  "preference": {
                    "type": "integer",
                    "description": "The preference of the candidate path is used to select the best candidate path for an SR Policy"
                  }
                }
              }
            }
          }
        }
      ],
      "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": "/updateCandidatePaths"
      },
      "task": true
    },
    {
      "name": "getSRPoliciesOnLink",
      "summary": "getSRPoliciesOnLink",
      "description": "Get SR Policies on link",
      "input": [
        {
          "name": "linkId",
          "type": "string",
          "info": "UUID: Identifier for a link: string",
          "required": true,
          "schema": {
            "title": "linkId",
            "type": "string"
          }
        },
        {
          "name": "requestType",
          "type": "string",
          "info": "OUTGOING: Return all SR Policies in the forward direction of the link which egress from this router. INCOMING: Return all SR Policies that ingress into the router on this...(description truncated): Must be one of [MOVED, INCOMING, OUTGOING]",
          "required": true,
          "schema": {
            "title": "requestType",
            "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": "/getSRPoliciesOnLink"
      },
      "task": true
    },
    {
      "name": "deletePolicies",
      "summary": "deletePolicies",
      "description": "Delete SR Policies",
      "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": "/deletePolicies"
      },
      "task": true
    },
    {
      "name": "updatePolicies",
      "summary": "updatePolicies",
      "description": "Update SR Policy. This request requires SR Policy to be shutdown first. Add/delete Candidate Path(s) can be utilized by this request.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the SR Policy: string",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "srPoliciesUpdateRequest: {\"data\": {\"adminState\": \"Must be one of [MAINTENANCE, DOWN, UP]\", \"candidatePathsConfig\": {\"candidatePath\": \"object\"}, \"description\": \"string\", \"policyParamsConfig\": {\"policyProperties\": {\"priority\": 123}}}}",
          "required": true,
          "schema": {
            "title": "RequestSrPoliciesUpdateRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "SrPoliciesUpdateRequest",
                "type": "object",
                "properties": {
                  "adminState": {
                    "title": "AdminState41",
                    "enum": [
                      "MAINTENANCE",
                      "DOWN",
                      "UP"
                    ],
                    "type": "string",
                    "description": "An enum for administrative state of an SR policy",
                    "example": "MAINTENANCE"
                  },
                  "candidatePathsConfig": {
                    "title": "CandidatePathsConfig",
                    "type": "object",
                    "properties": {
                      "candidatePath": {
                        "type": "object",
                        "additionalProperties": {
                          "title": "CandidatePathsConfigCandidatePath",
                          "required": [
                            "distinguisher",
                            "preference",
                            "protocolOrigin"
                          ],
                          "type": "object",
                          "properties": {
                            "adminState": {
                              "title": "AdminState9",
                              "enum": [
                                "MAINTENANCE",
                                "DOWN",
                                "UP"
                              ],
                              "type": "string",
                              "description": "An enum for administrative state of a Candidate Path",
                              "example": "MAINTENANCE"
                            },
                            "candidatePathConfigType": {
                              "title": "CandidatePathConfigType",
                              "type": "object",
                              "properties": {
                                "dynamic": {
                                  "title": "Dynamic",
                                  "type": "object",
                                  "properties": {
                                    "dynamicPathProperties": {
                                      "title": "DynamicPathProperties",
                                      "type": "object",
                                      "properties": {
                                        "bounds": {
                                          "title": "Bounds",
                                          "type": "object",
                                          "properties": {
                                            "igpMetricBound": {
                                              "type": "integer",
                                              "description": "Path is invalid if its IGP metric exceeds this value"
                                            },
                                            "latencyMetricBound": {
                                              "type": "integer",
                                              "description": "Path is invalid if its latency exceeds this value"
                                            },
                                            "maxHops": {
                                              "type": "integer",
                                              "description": "Path maximum hops constraint. 0 and 255 means no limit."
                                            },
                                            "segmentBound": {
                                              "type": "integer",
                                              "description": "Path is invalid if it has more segments than this value"
                                            },
                                            "teMetricBound": {
                                              "type": "integer",
                                              "description": "Path is invalid if its TE metric exceeds this value"
                                            }
                                          },
                                          "description": "Upper-bound constraints on the computed dynamic path"
                                        },
                                        "constraints": {
                                          "title": "Constraints",
                                          "type": "object",
                                          "properties": {
                                            "affinities": {
                                              "title": "Affinities",
                                              "type": "object",
                                              "properties": {
                                                "excludeAny": {
                                                  "title": "AdminGroups",
                                                  "type": "object",
                                                  "properties": {
                                                    "adminGroup": {
                                                      "title": "AdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Administrative group/Resource class/Color."
                                                    },
                                                    "extendedAdminGroup": {
                                                      "title": "ExtendedAdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Extended administrative group/Resource class/Color."
                                                    }
                                                  },
                                                  "description": "TE administrative group derived type"
                                                },
                                                "includeAll": {
                                                  "title": "AdminGroups",
                                                  "type": "object",
                                                  "properties": {
                                                    "adminGroup": {
                                                      "title": "AdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Administrative group/Resource class/Color."
                                                    },
                                                    "extendedAdminGroup": {
                                                      "title": "ExtendedAdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Extended administrative group/Resource class/Color."
                                                    }
                                                  },
                                                  "description": "TE administrative group derived type"
                                                },
                                                "includeAny": {
                                                  "title": "AdminGroups",
                                                  "type": "object",
                                                  "properties": {
                                                    "adminGroup": {
                                                      "title": "AdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Administrative group/Resource class/Color."
                                                    },
                                                    "extendedAdminGroup": {
                                                      "title": "ExtendedAdminGroup",
                                                      "type": "object",
                                                      "properties": {
                                                        "binary": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "description": "Extended administrative group/Resource class/Color."
                                                    }
                                                  },
                                                  "description": "TE administrative group derived type"
                                                }
                                              },
                                              "description": "Affinity constraints on the computed dynamic path"
                                            }
                                          },
                                          "description": "Constraints for the dynamic path computation"
                                        },
                                        "objective": {
                                          "title": "Objective3",
                                          "enum": [
                                            "TE_METRIC",
                                            "COST",
                                            "DISTANCE",
                                            "STAR_WEIGHT",
                                            "LATENCY",
                                            "HOPS"
                                          ],
                                          "type": "string",
                                          "description": "Segment-list optimization objectives. Overridden by objective in path-profile",
                                          "example": "TE_METRIC"
                                        },
                                        "pathProfileId": {
                                          "type": "integer",
                                          "description": "Path profile identifier"
                                        },
                                        "sidDataplaneType": {
                                          "title": "SidDataplaneType",
                                          "enum": [
                                            "mpls",
                                            "srv6"
                                          ],
                                          "type": "string",
                                          "description": "The dataplane type for the sid",
                                          "example": "mpls"
                                        }
                                      },
                                      "description": "Dynamic path properties of the Candidate Path"
                                    }
                                  },
                                  "description": "Candidate Path with dynamic computed segment-lists configuration parameters"
                                },
                                "explicit": {
                                  "title": "Explicit",
                                  "type": "object",
                                  "properties": {
                                    "segmentListsConfigRequest": {
                                      "title": "SegmentListsConfigRequest",
                                      "type": "object",
                                      "properties": {
                                        "segmentListsConfig": {
                                          "title": "SegmentListsConfig",
                                          "type": "object",
                                          "properties": {
                                            "segmentList": {
                                              "type": "array",
                                              "items": {
                                                "title": "SegmentListsConfigSegmentList",
                                                "type": "object",
                                                "properties": {
                                                  "name": {
                                                    "type": "string",
                                                    "description": "Segment-list name"
                                                  },
                                                  "segmentsConfig": {
                                                    "title": "SegmentsConfig",
                                                    "type": "object",
                                                    "properties": {
                                                      "segment": {
                                                        "type": "object",
                                                        "additionalProperties": {
                                                          "title": "SegmentProperties",
                                                          "type": "object",
                                                          "properties": {
                                                            "segmentTypes": {
                                                              "title": "SegmentTypes",
                                                              "type": "object",
                                                              "properties": {
                                                                "segmentType1": {
                                                                  "title": "SegmentType1",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "sidValue": {
                                                                      "title": "MplsLabel",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "int32": {
                                                                          "type": "integer"
                                                                        }
                                                                      },
                                                                      "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                                                    }
                                                                  },
                                                                  "description": "Segment declared by MPLS label"
                                                                },
                                                                "segmentType10": {
                                                                  "title": "SegmentType10",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "localInterfaceIdentifier": {
                                                                      "type": "integer",
                                                                      "description": "Local interface identifier"
                                                                    },
                                                                    "localIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    },
                                                                    "remoteInterfaceIdentifier": {
                                                                      "type": "integer",
                                                                      "description": "Remote interface identifier"
                                                                    },
                                                                    "remoteIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SRv6"
                                                                },
                                                                "segmentType11": {
                                                                  "title": "SegmentType11",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "localIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    },
                                                                    "remoteIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SRv6"
                                                                },
                                                                "segmentType2": {
                                                                  "title": "SegmentType2",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "sidValue": {
                                                                      "title": "Srv6Sid",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "ipv6Prefix": {
                                                                          "title": "Ipv6Prefix",
                                                                          "type": "object",
                                                                          "properties": {
                                                                            "string": {
                                                                              "type": "string"
                                                                            }
                                                                          },
                                                                          "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                                                        }
                                                                      },
                                                                      "description": "This type defines a SID value in SRv6"
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by SRv6 SID value"
                                                                },
                                                                "segmentType3": {
                                                                  "title": "SegmentType3",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "algorithm": {
                                                                      "type": "integer",
                                                                      "description": "Prefix SID algorithm identifier"
                                                                    },
                                                                    "ipv4Address": {
                                                                      "title": "Ipv4Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv4 Prefix with optional SR Algorithm"
                                                                },
                                                                "segmentType4": {
                                                                  "title": "SegmentType4",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "algorithm": {
                                                                      "type": "integer",
                                                                      "description": "Prefix SID algorithm identifier"
                                                                    },
                                                                    "ipv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SR-MPLS"
                                                                },
                                                                "segmentType5": {
                                                                  "title": "SegmentType5",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "interfaceIdentifier": {
                                                                      "type": "integer",
                                                                      "description": "local interface identifier"
                                                                    },
                                                                    "ipv4Address": {
                                                                      "title": "Ipv4Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv4 Prefix with Local Interface ID"
                                                                },
                                                                "segmentType6": {
                                                                  "title": "SegmentType6",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "localIpv4Address": {
                                                                      "title": "Ipv4Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                    },
                                                                    "remoteIpv4Address": {
                                                                      "title": "Ipv4Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                                                    }
                                                                  },
                                                                  "description": "Segment declared by IPv4 Addresses for link endpoints as Local, Remote pair"
                                                                },
                                                                "segmentType7": {
                                                                  "title": "SegmentType7",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "localInterfaceIdentifier": {
                                                                      "type": "integer",
                                                                      "description": "Local interface identifier"
                                                                    },
                                                                    "localIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    },
                                                                    "remoteInterfaceIdentifier": {
                                                                      "type": "integer",
                                                                      "description": "Remote interface identifier"
                                                                    },
                                                                    "remoteIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SR-MPLS"
                                                                },
                                                                "segmentType8": {
                                                                  "title": "SegmentType8",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "localIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    },
                                                                    "remoteIpv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Addresses for link endpoints as Local, Remote pair for SR-MPLS"
                                                                },
                                                                "segmentType9": {
                                                                  "title": "SegmentType9",
                                                                  "type": "object",
                                                                  "properties": {
                                                                    "algorithm": {
                                                                      "type": "integer",
                                                                      "description": "Prefix SID algorithm identifier"
                                                                    },
                                                                    "ipv6Address": {
                                                                      "title": "Ipv6Address",
                                                                      "type": "object",
                                                                      "properties": {
                                                                        "string": {
                                                                          "type": "string"
                                                                        }
                                                                      },
                                                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                                                    }
                                                                  },
                                                                  "description": "Unsupported - Segment declared by IPv6 Global Prefix with optional SR Algorithm for SRv6"
                                                                }
                                                              },
                                                              "description": "Types of segments"
                                                            },
                                                            "type": {
                                                              "title": "Type",
                                                              "enum": [
                                                                "segment_type_7",
                                                                "segment_type_8",
                                                                "segment_type_5",
                                                                "segment_type_6",
                                                                "segment_type_3",
                                                                "segment_type_4",
                                                                "segment_type_1",
                                                                "segment_type_2",
                                                                "segment_type_10",
                                                                "segment_type_11",
                                                                "segment_type_9"
                                                              ],
                                                              "type": "string",
                                                              "description": "Segment type",
                                                              "example": "segment_type_7"
                                                            },
                                                            "validate": {
                                                              "type": "boolean",
                                                              "description": "Unsupported -Indicates whether the segment should be validated. The default applies to all segments other than the first segment. For the first segment, validation is always done"
                                                            }
                                                          },
                                                          "description": "Segment properties grouping"
                                                        }
                                                      }
                                                    },
                                                    "description": "Segments for given segment list"
                                                  },
                                                  "weight": {
                                                    "type": "integer",
                                                    "description": "Segment-list weighted loadshare. Default weight is 1. Formula: bandwidth * weight / sumOfWeight"
                                                  }
                                                }
                                              },
                                              "description": ""
                                            }
                                          },
                                          "description": "Segment-lists properties"
                                        }
                                      },
                                      "description": "Segment lists grouping"
                                    }
                                  },
                                  "description": "Candidate Path with explicitly defined set/s of segment-lists configuration parameters"
                                }
                              },
                              "description": "Candidate Path config type grouping"
                            },
                            "candidatePathProperties": {
                              "title": "CandidatePathProperties",
                              "type": "object",
                              "properties": {
                                "bandwidth": {
                                  "type": "integer",
                                  "description": "Bandwidth capacity. Unit kbps. For a candidate path with multiple segment-lists, the bandiwdth value is applied to each segment list relative to the weight value associated to the segment-list"
                                },
                                "bsid": {
                                  "title": "Bsid",
                                  "type": "object",
                                  "properties": {
                                    "bindingSid_properties": {
                                      "title": "BindingSid_properties",
                                      "type": "object",
                                      "properties": {
                                        "dataplane": {
                                          "title": "Dataplane",
                                          "enum": [
                                            "mpls",
                                            "srv6"
                                          ],
                                          "type": "string",
                                          "description": "Binding SID dataplane type",
                                          "example": "mpls"
                                        },
                                        "value": {
                                          "title": "SidValueType",
                                          "type": "object",
                                          "properties": {
                                            "mplsLabel": {
                                              "title": "MplsLabel",
                                              "type": "object",
                                              "properties": {
                                                "int32": {
                                                  "type": "integer"
                                                }
                                              },
                                              "description": "Segment identifier, value -1 implies auto-assign for NRC-P. Value zero implies auto-assign on node, but is unsupported until we get BGP-LS discovery"
                                            },
                                            "srv6Sid": {
                                              "title": "Srv6Sid",
                                              "type": "object",
                                              "properties": {
                                                "ipv6Prefix": {
                                                  "title": "Ipv6Prefix",
                                                  "type": "object",
                                                  "properties": {
                                                    "string": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "description": "The ipv6-prefix type represents an IPv6 address prefix. The prefix length is given by the number following the slash character and must be less than or equal to 128. A prefix length value of n corresponds to an IP address mask that has n contiguous 1-bits from the most significant bit (MSB) and all other bits set to 0. The IPv6 address should have all bits that do not belong to the prefix set to zero. The canonical format of an IPv6 prefix has all bits of the IPv6 address set to zero that are not part of the IPv6 prefix. Furthermore, the IPv6 address is represented as defined in Section 4 of RFC 5952."
                                                }
                                              },
                                              "description": "This type defines a SID value in SRv6"
                                            }
                                          },
                                          "description": "The SID value type. The only supported value is mpls-label"
                                        }
                                      },
                                      "description": "Binding SID properties grouping"
                                    }
                                  }
                                }
                              },
                              "description": "Candidate Path properties grouping"
                            },
                            "description": {
                              "type": "string",
                              "description": "Candidate Path description"
                            },
                            "distinguisher": {
                              "type": "integer",
                              "description": "Distinguisher in the context of BGP with combined with endpoint and color must be unique"
                            },
                            "name": {
                              "type": "string",
                              "description": "Candidate Path name"
                            },
                            "originator": {
                              "type": "string",
                              "description": "NOTE:NRC-P Server will ignore user provided value and fill in its own value. Identifier (concatenation of ASN and node-address) of the node that signalled/instantiated the Candidate Path on headend."
                            },
                            "preference": {
                              "type": "integer",
                              "description": "The preference of the candidate path is used to select the best candidate path for an SR Policy"
                            },
                            "protocolOrigin": {
                              "title": "ProtocolOrigin",
                              "enum": [
                                "pcep",
                                "bgp",
                                "node_configuration",
                                "bgp_discovered"
                              ],
                              "type": "string",
                              "description": "Instantiation mechanism used to create the Candidate Path",
                              "example": "pcep"
                            }
                          }
                        }
                      }
                    },
                    "description": "SR Policy Candidate Path(s)"
                  },
                  "description": {
                    "type": "string",
                    "description": "Description of the policy"
                  },
                  "policyParamsConfig": {
                    "title": "SrPoliciesUpdateRequestPolicyParamsConfig",
                    "type": "object",
                    "properties": {
                      "policyProperties": {
                        "title": "PolicyProperties",
                        "type": "object",
                        "properties": {
                          "priority": {
                            "type": "integer",
                            "description": "Unsupported - Priority considered when policy is recomputed due to topology changes. Range from 0 to 255. Value 0 is the highest priority"
                          }
                        },
                        "description": "Sr Policy properties"
                      }
                    },
                    "description": "Policy parameters configuration"
                  }
                }
              }
            }
          }
        }
      ],
      "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": "/updatePolicies"
      },
      "task": true
    },
    {
      "name": "fetchPolicyList",
      "summary": "fetchPolicyList",
      "description": "Fetch SR Policy list",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "policyIds: {\"data\": \"array\"}",
          "required": true,
          "schema": {
            "title": "RequestListstring",
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": ""
              }
            }
          }
        }
      ],
      "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": "/fetchPolicyList"
      },
      "task": true
    },
    {
      "name": "deletePolicy",
      "summary": "deletePolicy",
      "description": "Delete SR Policy",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the SR Policy: string",
          "required": true,
          "schema": {
            "title": "id",
            "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": "/deletePolicy"
      },
      "task": true
    },
    {
      "name": "patchPolicyAdmin",
      "summary": "patchPolicyAdmin",
      "description": "Patch a SR Policy admin status",
      "input": [
        {
          "name": "adminState",
          "type": "string",
          "info": "SR Policy administrative state, UP for enabled, DOWN for disabled, Maintenance is not supported: Must be one of [MAINTENANCE, DOWN, UP]",
          "required": true,
          "schema": {
            "title": "adminState",
            "type": "string"
          }
        },
        {
          "name": "srPolicyId",
          "type": "string",
          "info": "The unique identifier of the SR Policy: string",
          "required": true,
          "schema": {
            "title": "srPolicyId",
            "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": "/patchPolicyAdmin"
      },
      "task": true
    },
    {
      "name": "createSRPoliciesResignal",
      "summary": "createSRPoliciesResignal",
      "description": "Trigger resignal on a list of SR Policies",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "policyIds: {\"data\": \"array\"}",
          "required": true,
          "schema": {
            "title": "RequestListstring",
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": ""
              }
            }
          }
        }
      ],
      "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": "/createSRPoliciesResignal"
      },
      "task": true
    },
    {
      "name": "findSdnPath",
      "summary": "findPath",
      "description": "Path Finder API to validate whether a path is possible without actually creating the path",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination: {\"data\": {\"destinationAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"pathRequest\": {\"pathTeParams\": {\"adminGroupExcludeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"adminGroupIncludeAll\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"adminGroupIncludeAny\": {\"adminGroup\": {\"binary\": \"string\"}, \"extendedAdminGroup\": {\"binary\": \"string\"}}, \"bandwidth\": 123, \"bidirectional\": \"Must be one of [SYMMETRIC_LOOSE, NO, ASYMMETRIC_STRICT, ASYMMETRIC_LOOSE, ANY_REVERSE_ROUTE, SYMMETRIC_STRICT]\", \"diversity\": \"Must be one of [NO, NODE_STRICT_AND_SRLG, NODE_STRICT, LINK_LOOSE, LINK_STRICT_AND_SRLG, NODE_LOOSE, SRLG, LINK_STRICT]\", \"excludeRouteObjects\": [{\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}], \"explicitRouteStrategy\": \"Must be one of [LOOSE_HOP_ANYCAST_PREFERRED, ECMP, LOOSE_HOP_BSID_PREFERRED, STANDARD_BSID_PREFERRED, COMPRESSED, LOOSE_HOP, STANDARD]\", \"explicitRouteStrategyEcmpPreference\": \"Must be one of [ADJACENCY_SID, NODE_SID]\", \"includeRouteObjects\": \"object\", \"ipAddressTypeStrategy\": \"Must be one of [IPV6, IPV4, ANY]\", \"maxCost\": 123, \"maxHops\": 123, \"maxLatency\": 123, \"maxTeMetric\": 123, \"msd\": 123, \"objective\": \"Must be one of [TE_METRIC, COST, DISTANCE, STAR_WEIGHT, LATENCY, HOPS]\", \"pathProfileId\": 123, \"reverseBandwidth\": 123}}, \"pathType\": \"Must be one of [SRTE, UNKNOWN, RSVP]\", \"secondaryDestinationAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"secondarySourceAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}, \"sourceAddress\": {\"ipv4Address\": {\"string\": \"string\"}, \"ipv6Address\": {\"string\": \"string\"}}}}",
          "required": false,
          "schema": {
            "title": "RequestPointToPointPathRequest",
            "type": "object",
            "properties": {
              "data": {
                "title": "PointToPointPathRequest",
                "required": [
                  "destinationAddress",
                  "sourceAddress"
                ],
                "type": "object",
                "properties": {
                  "destinationAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "pathRequest": {
                    "title": "PathRequest",
                    "type": "object",
                    "properties": {
                      "pathTeParams": {
                        "title": "PathTeParams",
                        "type": "object",
                        "properties": {
                          "adminGroupExcludeAny": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "adminGroupIncludeAll": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "adminGroupIncludeAny": {
                            "title": "AdminGroups",
                            "type": "object",
                            "properties": {
                              "adminGroup": {
                                "title": "AdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Administrative group/Resource class/Color."
                              },
                              "extendedAdminGroup": {
                                "title": "ExtendedAdminGroup",
                                "type": "object",
                                "properties": {
                                  "binary": {
                                    "type": "string"
                                  }
                                },
                                "description": "Extended administrative group/Resource class/Color."
                              }
                            },
                            "description": "TE administrative group derived type"
                          },
                          "bandwidth": {
                            "type": "integer",
                            "description": "Path bandwidth capacity. Units in Kbps"
                          },
                          "bidirectional": {
                            "title": "Bidirectional22",
                            "enum": [
                              "SYMMETRIC_LOOSE",
                              "NO",
                              "ASYMMETRIC_STRICT",
                              "ASYMMETRIC_LOOSE",
                              "ANY_REVERSE_ROUTE",
                              "SYMMETRIC_STRICT"
                            ],
                            "type": "string",
                            "description": "The Bidirectional Mode to be used in path computation. When any value other than Bidirectional.NO is applied, path calculation will perform a cost function evaluation for the links in the forward and reverse directions. When the objective is Star Weight, the forward and reverse values will used in a Max() function. For all other Objective types, the forward and reverse values will be used in an Average Function. For example, with an Objective of Latency or TE Metric, if the link in the forward direction has a value of 3, and the link in the reverse direction has a value of 7, the value of the link used during path search will be considered as a value of 5. When a disjoint value is provided other than None and Bidirectional is NO, the bidirectional value is interpreted as SYMMETRIC_LOOSE. When the explicit route strategy is ECMP, the bidirectional value is treated as SYMMETRIC_LOOSE - no support for strict bidirectional. If not provided, value will come from path profile or default to NO. Note that ASYMMETRIC_STRICT / ASYMMETRIC_LOOSE are not supported in this release.",
                            "example": "SYMMETRIC_LOOSE"
                          },
                          "diversity": {
                            "title": "Diversity",
                            "enum": [
                              "NO",
                              "NODE_STRICT_AND_SRLG",
                              "NODE_STRICT",
                              "LINK_LOOSE",
                              "LINK_STRICT_AND_SRLG",
                              "NODE_LOOSE",
                              "SRLG",
                              "LINK_STRICT"
                            ],
                            "type": "string",
                            "description": "The Disjoint Mode to be used in path computation. When the value is set as anything other than No then the bidirectional value is considered as SYMMETRIC_LOOSE unless explicitly set to something other than None. Note that NODE_LOOSE / LINK_LOOSE are not supported in this release and will return the same results as NODE_STRICT / LINK_STRICT. If not provided, value will come from path profile or default to NO.",
                            "example": "NO"
                          },
                          "excludeRouteObjects": {
                            "type": "array",
                            "items": {
                              "title": "IpAddress",
                              "type": "object",
                              "properties": {
                                "ipv4Address": {
                                  "title": "Ipv4Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                },
                                "ipv6Address": {
                                  "title": "Ipv6Address",
                                  "type": "object",
                                  "properties": {
                                    "string": {
                                      "type": "string"
                                    }
                                  },
                                  "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                }
                              },
                              "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                            },
                            "description": "Excluded Route Objects. Path must not contain any of the entities which correspond to the IP Addresses in this set"
                          },
                          "explicitRouteStrategy": {
                            "title": "ExplicitRouteStrategy1",
                            "enum": [
                              "LOOSE_HOP_ANYCAST_PREFERRED",
                              "ECMP",
                              "LOOSE_HOP_BSID_PREFERRED",
                              "STANDARD_BSID_PREFERRED",
                              "COMPRESSED",
                              "LOOSE_HOP",
                              "STANDARD"
                            ],
                            "type": "string",
                            "description": "The strategy to use when computing the explicit route objects. The supported strategy options include STANDARD, LOOSE_HOP, LOOSE_HOP_ANYCAST_PREFERRED, LOOSE_HOP_BSID_PREFERRED, STANDARD_BSID_PREFERRED, COMPRESSED, ECMP. If not provided, value will come from path profile or default to STANDARD. NOTE: Explicit Route Strategy BSID Preferred or Loose hop BSID preferred may not return a viable path result. The algorithm will find and use existing binding SIDs in the topology but will not determine if new binding SIDs are required, and thus may ignore the MSD requirements of the request. Automatic Binding SID computation is only supported by Stateful Tunnel management and not supported in the path finder.",
                            "example": "LOOSE_HOP_ANYCAST_PREFERRED"
                          },
                          "explicitRouteStrategyEcmpPreference": {
                            "title": "ExplicitRouteStrategyEcmpPreference1",
                            "enum": [
                              "ADJACENCY_SID",
                              "NODE_SID"
                            ],
                            "type": "string",
                            "description": "Only applicable to Explicit Route Strategy with a value of ECMP. Determines the preference of SID selection when calculating an ECMP ERO. If not provided, value will come from path profile or default to ADJACENCY_SID.",
                            "example": "ADJACENCY_SID"
                          },
                          "includeRouteObjects": {
                            "type": "object",
                            "additionalProperties": {
                              "title": "IroHop",
                              "required": [
                                "hopType",
                                "ipAddress"
                              ],
                              "type": "object",
                              "properties": {
                                "hopType": {
                                  "title": "HopType1",
                                  "enum": [
                                    "STRICT",
                                    "LOOSE",
                                    "UNKNOWN"
                                  ],
                                  "type": "string",
                                  "description": "The hop type, only strict or loose is supported",
                                  "example": "STRICT"
                                },
                                "ipAddress": {
                                  "title": "IpAddress",
                                  "type": "object",
                                  "properties": {
                                    "ipv4Address": {
                                      "title": "Ipv4Address",
                                      "type": "object",
                                      "properties": {
                                        "string": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                                    },
                                    "ipv6Address": {
                                      "title": "Ipv6Address",
                                      "type": "object",
                                      "properties": {
                                        "string": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                                    }
                                  },
                                  "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                                }
                              },
                              "description": "IRO hop"
                            }
                          },
                          "ipAddressTypeStrategy": {
                            "title": "IpAddressTypeStrategy",
                            "enum": [
                              "IPV6",
                              "IPV4",
                              "ANY"
                            ],
                            "type": "string",
                            "description": "Permitted IP Address Type",
                            "example": "IPV6"
                          },
                          "maxCost": {
                            "type": "integer",
                            "description": "Path maximum cost constraint"
                          },
                          "maxHops": {
                            "type": "integer",
                            "description": "Path maximum hops constraint. 0 and 255 means no limit."
                          },
                          "maxLatency": {
                            "type": "number",
                            "description": "Path maximum latency constraint (in microseconds)"
                          },
                          "maxTeMetric": {
                            "type": "integer",
                            "description": "Path maximum TE metric constraint"
                          },
                          "msd": {
                            "type": "integer",
                            "description": "Path maximum SID depth. The advertised MSD from the source node will be used if msd is set to 0"
                          },
                          "objective": {
                            "title": "Objective26",
                            "enum": [
                              "TE_METRIC",
                              "COST",
                              "DISTANCE",
                              "STAR_WEIGHT",
                              "LATENCY",
                              "HOPS"
                            ],
                            "type": "string",
                            "description": "Path metric objective, specifies the primary goal for identifying resources and/or paths for service creation. Cost, Latency, Hops, TE Metric and Star Weight are the supported values. If not provided, value will come from path profile or default to COST.",
                            "example": "TE_METRIC"
                          },
                          "pathProfileId": {
                            "type": "integer",
                            "description": "Path profile identifier. An identifier of a predefined profile. 0 means no path profile assigned. NOTE: Path diagnosis behaves like LSP diagnosis, the path profile takes precedence for constraints of [objective, bidirectional, diversity, includeRouteObjects, excludeRouteObjects, explicitRouteStrategy, explicitRouteStrategyEcmpPreference], and other individual path TE params will not be override by the path profile if non-default values are provided. But for the regular IP Path finding request, the individual Path TE params take precedence if values are provided to allow more tuning and customization, otherwise, values will come from path profile or set to default values."
                          },
                          "reverseBandwidth": {
                            "type": "integer",
                            "description": "Reverse Path bandwidth capacity. Units in Kbps"
                          }
                        },
                        "description": "Path tool parameters"
                      }
                    },
                    "description": "Path request contains path type and all the path tool TE parameters"
                  },
                  "pathType": {
                    "title": "PathType",
                    "enum": [
                      "SRTE",
                      "UNKNOWN",
                      "RSVP"
                    ],
                    "type": "string",
                    "description": "Path type denoting signaling type",
                    "example": "SRTE"
                  },
                  "secondaryDestinationAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "secondarySourceAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  },
                  "sourceAddress": {
                    "title": "IpAddress",
                    "type": "object",
                    "properties": {
                      "ipv4Address": {
                        "title": "Ipv4Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv4-address type represents an IPv4 address in dotted-quad notation. The IPv4 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format for the zone index is the numerical format"
                      },
                      "ipv6Address": {
                        "title": "Ipv6Address",
                        "type": "object",
                        "properties": {
                          "string": {
                            "type": "string"
                          }
                        },
                        "description": "The ipv6-address type represents an IPv6 address in full, mixed, shortened, and shortened-mixed notation. The IPv6 address may include a zone index, separated by a % sign. The zone index is used to disambiguate identical address values. For link-local addresses, the zone index will typically be the interface index number or the name of an interface. If the zone index is not present, the default zone of the device will be used. The canonical format of IPv6 addresses uses the textual representation defined in Section 4 of RFC 5952. The canonical format for the zone index is the numerical format as described in Section 11.2 of RFC 4007."
                      }
                    },
                    "description": "The ip-address type represents an IP address and is IP version neutral. The format of the textual representation implies the IP version. This type supports scoped addresses by allowing zone identifiers in the address format."
                  }
                },
                "description": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination"
              }
            }
          }
        }
      ],
      "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": "/findSdnPath"
      },
      "task": true
    },
    {
      "name": "getAssocGroupConfig",
      "summary": "getAssocGroupConfig",
      "description": "Get association group configuration parameters.",
      "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": "/getAssocGroupConfig"
      },
      "task": true
    },
    {
      "name": "patchAssocGroupConfig",
      "summary": "patchAssocGroupConfig",
      "description": "Patch association group configuration parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Grouping of all association group related parameters for IP/MPLS optimization.: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "Grouping of all association group related parameters for IP/MPLS optimization."
              }
            ]
          }
        }
      ],
      "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": "/patchAssocGroupConfig"
      },
      "task": true
    },
    {
      "name": "getBsidGenerationConfig",
      "summary": "getBsidGenerationConfig",
      "description": "Get BSID generation configuration parameters.",
      "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": "/getBsidGenerationConfig"
      },
      "task": true
    },
    {
      "name": "patchBsidGenerationConfig",
      "summary": "patchBsidGenerationConfig",
      "description": "Patch BSID generation configuration parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "bsidGenerationConfig: object",
          "required": true,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "bsidGenerationConfig"
              }
            ]
          }
        }
      ],
      "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": "/patchBsidGenerationConfig"
      },
      "task": true
    },
    {
      "name": "getDeviceNameIpService",
      "summary": "getDeviceNameIpService",
      "description": "Get NSP device name mapping parameters",
      "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": "/getDeviceNameIpService"
      },
      "task": true
    },
    {
      "name": "patchDeviceNameIpService",
      "summary": "patchDeviceNameIpService",
      "description": "Patch NSP device name mapping parameters",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Group of all device and name mapping related parameters for IP/MPLS optimization.: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "Group of all device and name mapping related parameters for IP/MPLS optimization."
              }
            ]
          }
        }
      ],
      "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": "/patchDeviceNameIpService"
      },
      "task": true
    },
    {
      "name": "getLspBsidGenerationConfig",
      "summary": "getLspBsidGenerationConfig",
      "description": "Get LSP BSID generation configuration parameters.",
      "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": "/getLspBsidGenerationConfig"
      },
      "task": true
    },
    {
      "name": "patchLspBsidGenerationConfig",
      "summary": "patchLspBsidGenerationConfig",
      "description": "Patch LSP BSID generation configuration parameters.",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Define LSP related configuration.: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "Define LSP related configuration."
              }
            ]
          }
        }
      ],
      "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": "/patchLspBsidGenerationConfig"
      },
      "task": true
    },
    {
      "name": "getAssocGroups",
      "summary": "getAssocGroups",
      "description": "Return list of PCE association groups used by the LSP paths in 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": "GET",
        "path": "/getAssocGroups"
      },
      "task": true
    },
    {
      "name": "getAssocGroupsByType",
      "summary": "getAssocGroupsByType",
      "description": "Return list of PCE association groups of provided type used by the LSP paths in the system",
      "input": [
        {
          "name": "associationGroupType",
          "type": "string",
          "info": "Association group type: ",
          "required": true,
          "schema": {
            "title": "associationGroupType",
            "type": "string",
            "enum": [
              "POLICY",
              "PROTECTION",
              "DISJOINT"
            ]
          }
        }
      ],
      "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": "/getAssocGroupsByType"
      },
      "task": true
    },
    {
      "name": "lspPathProfileOverride",
      "summary": "lspPathProfileOverride",
      "description": "Override path profile for both PCE and PCC initiated LSPs, note that the path profile will not be overridden if a path ID doesn't exist or the corresponding LSP configuration is invalid",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "pathProfileOverrideRequest: object",
          "required": true,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "pathProfileOverrideRequest"
              }
            ]
          }
        }
      ],
      "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": "/lspPathProfileOverride"
      },
      "task": true
    },
    {
      "name": "fetchLspPathsByTunnelId",
      "summary": "fetchLspPathsByTunnelId",
      "description": "Fetch MPLS LSP paths by source-address, tunnel-id and path-type",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Group of attributes to identify LSP paths by source-address, tunnel-id and path-type: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "Group of attributes to identify LSP paths by source-address, tunnel-id and path-type"
              }
            ]
          }
        }
      ],
      "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": "/fetchLspPathsByTunnelId"
      },
      "task": true
    },
    {
      "name": "getOnAssocGroup",
      "summary": "getOnAssocGroup",
      "description": "Get a list of MPLS LSP paths associated with the provided association group",
      "input": [
        {
          "name": "associationGroupId",
          "type": "number",
          "info": "Association group ID: 123",
          "required": true,
          "schema": {
            "title": "associationGroupId",
            "type": "number"
          }
        },
        {
          "name": "associationGroupSource",
          "type": "string",
          "info": "Association group source: string",
          "required": true,
          "schema": {
            "title": "associationGroupSource",
            "type": "string"
          }
        },
        {
          "name": "associationGroupType",
          "type": "string",
          "info": "Association group type: ",
          "required": true,
          "schema": {
            "title": "associationGroupType",
            "type": "string",
            "enum": [
              "POLICY",
              "PROTECTION",
              "DISJOINT"
            ]
          }
        }
      ],
      "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": "/getOnAssocGroup"
      },
      "task": true
    },
    {
      "name": "getOnBsid",
      "summary": "getOnBsid",
      "description": "Get MPLS LSP paths riding on a BSID",
      "input": [
        {
          "name": "bsidId",
          "type": "string",
          "info": "UUID: Identifier for a BSID LSP path or a candidate path: string",
          "required": true,
          "schema": {
            "title": "bsidId",
            "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": "/getOnBsid"
      },
      "task": true
    },
    {
      "name": "getProfileGroup",
      "summary": "getProfileGroup",
      "description": "Get MPLS LSP paths assigned with the provided profile and group ID pair",
      "input": [
        {
          "name": "extendedId",
          "type": "number",
          "info": "Path extended identifier. An identifier for profile association/grouping. -1 is used to ignore the extended-id, which therefore will return all LSP Path assigned with a p...(description truncated): 123",
          "required": true,
          "schema": {
            "title": "extendedId",
            "type": "number"
          }
        },
        {
          "name": "profileId",
          "type": "number",
          "info": "Path profile identifier. An identifier of the assigned profile. Value of 0 represents no profile assigned.: 123",
          "required": true,
          "schema": {
            "title": "profileId",
            "type": "number"
          }
        }
      ],
      "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": "/getProfileGroup"
      },
      "task": true
    },
    {
      "name": "fetchLinks",
      "summary": "fetchLinks",
      "description": "Fetch link list, note that invalid input link uuids will be ignored",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "UUIDs: List of unique identifiers for links: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "UUIDs: List of unique identifiers for links"
              }
            ]
          }
        }
      ],
      "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": "/fetchLinks"
      },
      "task": true
    },
    {
      "name": "findPath",
      "summary": "findPath",
      "description": "Path Finder API to validate whether a path is possible without actually creating the path",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination: object",
          "required": false,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "Point to point path request, which supports path finding from one source to one destination, and optional secondary source/destination"
              }
            ]
          }
        }
      ],
      "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": "/findPath"
      },
      "task": true
    },
    {
      "name": "getByKey",
      "summary": "getByKey",
      "description": "Get SR Policy by key (headend, endpoint, color)",
      "input": [
        {
          "name": "color",
          "type": "string",
          "info": "Color associated with the policy: string",
          "required": true,
          "schema": {
            "title": "color",
            "type": "string"
          }
        },
        {
          "name": "endpoint",
          "type": "string",
          "info": "Policy end point IP address: string",
          "required": true,
          "schema": {
            "title": "endpoint",
            "type": "string"
          }
        },
        {
          "name": "headend",
          "type": "string",
          "info": "Policy headend IP address: string",
          "required": true,
          "schema": {
            "title": "headend",
            "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": "/getByKey"
      },
      "task": true
    },
    {
      "name": "fetchCandidatePathList",
      "summary": "fetchCandidatePathList",
      "description": "Fetch Candidate Path list",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "candidatePathIds: object",
          "required": true,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "candidatePathIds"
              }
            ]
          }
        }
      ],
      "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": "/fetchCandidatePathList"
      },
      "task": true
    },
    {
      "name": "getConsumer",
      "summary": "getConsumer",
      "description": "Get the number of consumers on the given SR Policy",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the SR Policy: string",
          "required": true,
          "schema": {
            "title": "id",
            "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": "/getConsumer"
      },
      "task": true
    },
    {
      "name": "createResignalAll",
      "summary": "createResignalAll",
      "description": "Trigger resignal all SR Policies",
      "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": "/createResignalAll"
      },
      "task": true
    },
    {
      "name": "createResignalSRPolicies",
      "summary": "createResignal",
      "description": "Trigger resignal on a list of SR Policies",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "policyIds: object",
          "required": true,
          "schema": {
            "allOf": [
              {
                "type": "object"
              },
              {
                "description": "policyIds"
              }
            ]
          }
        }
      ],
      "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": "/createResignalSRPolicies"
      },
      "task": true
    },
    {
      "name": "getSRPolicyByID",
      "summary": "gets",
      "description": "Get SR Policy by unique identifier",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID: An identifier to uniquely identify the SR Policy: string",
          "required": true,
          "schema": {
            "title": "id",
            "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": "/getSRPolicyByID"
      },
      "task": true
    }
  ],
  "views": []
}